我有一个java servlet连接到MS SQL 2008数据库并检索信息,将结果集传递给类以将其转换为jsonarray然后返回该信息。
以下是使用http://localhost:8080/KReport/GetInfo?q=va-sql2008从浏览器浏览课程时返回信息的示例:
[{"machineinfo":{"DefaultGateway":"172.24.1.2","groupName":"servers.headoffice.vasa","ChassisManufacturer":"No Enclosure","DhcpEnabled":2,"LoginName":"","MotherboardProductCode":"440BX Desktop Reference Platform","MaxMemorySlots":"15","Machine_GroupID":"va-sql2008dev.servers.headoffice.vasa","timezoneOffset":-120,"ChassisSerialNumber":"None","MajorVersion":6,"MotherboardVersion":"None","MaxMemorySize":"256 GB","Manufacturer":"VMware, Inc.","MacAddr":"00-50-56-9F-00-11","ProductName":"VMware Virtual Platform","agentGuid":871664384736872,"OsInfo":"R2 Server Standard x64 Edition Build 7600","PrimaryWinsServer":"172.24.1.9","SysSerialNumber":"VMware-42 1f 09 c3 bd 8c ad 60-22 e4 50 1c 35 52 76 fe","OsType":"2008","MotherboardManufacturer":"Intel Corporation","ipv6Address":"[fe80::edf0:d1bd:6ef8:a17d%11]","MachineVersion":"None","IpAddress":"172.24.1.184","DnsServer1":"172.24.1.22","DnsServer2":"172.24.1.29","ComputerName":"va-sql2008dev","ChassisAssetTag":"No Asset Tag","ChassisType":"Other","MotherboardSerialNumber":"None","SubnetMask":"255.255.255.0","MinorVersion":1,"agentInstGuid":"KSY99906876289809604","WinsEnabled":1,"ConnectionGatewayIp":"172.24.1.184","machName":"va-sql2008dev","ChassisVersion":"N\/A","BusSpeed":"0 MHz"}},{"machineinfo":{"DefaultGateway":"172.24.1.2","groupName":"servers.headoffice.vasa","ChassisManufacturer":"No Enclosure","DhcpEnabled":2,"LoginName":"","MotherboardProductCode":"440BX Desktop Reference Platform","MaxMemorySlots":"15","Machine_GroupID":"va-sql2008dev.servers.headoffice.vasa","timezoneOffset":-120,"ChassisSerialNumber":"None","MajorVersion":6,"MotherboardVersion":"None","MaxMemorySize":"256 GB","Manufacturer":"VMware, Inc.","MacAddr":"00-50-56-9F-00-11","ProductName":"VMware Virtual Platform","agentGuid":871664384736872,"OsInfo":"R2 Server Standard x64 Edition Build 7600","PrimaryWinsServer":"172.24.1.9","SysSerialNumber":"VMware-42 1f 09 c3 bd 8c ad 60-22 e4 50 1c 35 52 76 fe","OsType":"2008","MotherboardManufacturer":"Intel Corporation","ipv6Address":"[fe80::edf0:d1bd:6ef8:a17d%11]","MachineVersion":"None","IpAddress":"172.24.1.184","DnsServer1":"172.24.1.22","DnsServer2":"172.24.1.29","ComputerName":"va-sql2008dev","ChassisAssetTag":"No Asset Tag","ChassisType":"Other","MotherboardSerialNumber":"None","SubnetMask":"255.255.255.0","MinorVersion":1,"agentInstGuid":"KSY99906876289809604","WinsEnabled":1,"ConnectionGatewayIp":"172.24.1.184","machName":"va-sql2008dev","ChassisVersion":"N\/A","BusSpeed":"0 MHz"}}]
其中列出了2台机器(如果您在那里搜索machineinfo,则会找到2个条目)。我已在JSONLint上验证了此返回的信息,并将其检出为有效的json。
我的servlet通过response.getWriter().write(njson.toString());
返回信息,但我似乎无法弄清楚如何在另一页上使用javascript显示此信息。
我的最后一次尝试是使用:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<script type="text/javascript">
$.ajax({
url:'http://localhost:8080/KReport/GetInfo?q=va-sql2008',
dataType:'json',
type:'GET',
success:function(data){
console.log(data);
},
error:function(jxhr){
console.log(jxhr.responseText);
}
});
</script>
</html>
但这不起作用 - 只是一个空白屏幕。
任何帮助都会受到赞赏吗?
答案 0 :(得分:0)
console.log
将数据输出到JavaScript控制台。如果要将其输出到页面,则需要执行DOM manipulation。
答案 1 :(得分:0)
console.log
会将数据输出到浏览器的开发者工具中。要在页面上显示,请在success
回调中
$('body').append( "<pre>" + JSON.stringify(data, undefined, 2) + "</pre>" );