我是Dojo小部件的新手。我想使用dojogrid小部件显示一些数据。我想使用访问数据库填充窗口小部件中的数据。我使用JDBC连接到数据库,并将在结果集中检索一些值集。现在我想在Dojogrid Widget中显示这些值。请向我建议一些代码或链接,以了解如何解决这个问题。提前致谢。
答案 0 :(得分:0)
有几种方法可以实现这一目标。由于您使用的是JSP,因此最简单的方法是利用JSP中的Java绑定。
执行以下操作: 1)在JSP中,包括dojo和支持文件(网格的样式表,dojo.js和dojo.requires)
2)在request / jsp或session中创建一个java变量,用于存储要在网格中呈现的数据。您可以使用google gson或类似的库将Java对象转换为JSON
3)通过将dojo数据存储区(例如itemfilereadstore)绑定到保存数据的java对象来创建它。例如:
<%
//you can also use a Java object/collectin and converted to json string using libraries such as Gson
String gridData = "{
identifier:"id",
items: [
{id:1, "Name":915,"IpAddress":6},
{id:2, "Name":916,"IpAddress":6},
{id:3, "Name":917,"IpAddress":6} ]
}";
%>
var gridStore = new dojo.data.ItemFileReadStore( { data: dojo.fromJson(<%= gridData %>)} );
var gridStructure = var gridStructure =[{
cells:[
[
{ field: "Name",
name: "Name",
width: "40%", styles: 'text-align: right;'
},
{ field: "IpAddress",
name: "Ip Address" ,
width: "40%",
styles: 'text-align: right;'
}
]
]
}];
4)通过指定布局创建数据网格,并使用您在步骤3中创建的商店来填充网格
<div jsid="mygrid" id="mygrid" dojoType="dojox.grid.DataGrid"
gridOptions='{query:"" ,structure:gridStructure,store:gridStore}'
title="Simple Grid" style="width: 500px; height: 150px;"></div>
或者,如果您想要更多SOA-ish,您可以将jsp / Java EE后端用作返回JSON的服务,并使用纯HTML进行呈现(并使用AJAX从Java EE后端获取JSON) )