0

我是 Dojo 小部件的新手。我想使用 dojogrid 小部件显示一些数据。我想使用访问数据库填充小部件中的数据。我正在使用 JDBC 连接到数据库,并将在结果集中检索一些值。现在我想在 Dojogrid Widget 中显示该值。请建议我一些关于如何解决这个问题的代码或链接。?提前致谢。

4

1 回答 1

0

有几种方法可以实现这一点。由于您使用的是 JSP,因此最简单的方法是利用 JSP 中的 Java 绑定。

执行以下操作: 1) 在您的 JSP 中,包含 dojo 和支持文件(网格的样式表、dojo.js 和 dojo.requires)

2) 在请求/jsp 或会话中创建一个 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)

于 2012-02-27T06:03:52.413 回答