Я новичок в виджетах Dojo. Я хочу отобразить некоторые данные с помощью виджета dojogrid. Я хочу заполнить данные в виджете с помощью базы данных доступа. Я подключаюсь к базе данных с помощью JDBC и получаю некоторый набор значений в наборе результатов. Теперь я хочу отобразить эти значения в виджете Dojogrid. Пожалуйста, предложите мне код или ссылки о том, как подойти к этой проблеме.? Заранее спасибо.
Отображение данных на странице JSP с использованием сетки данных Dojo
Ответы (1)
Есть несколько способов добиться этого. Поскольку вы используете JSP, проще всего было бы использовать привязки Java в JSP.
сделайте следующее: 1) включите в свой JSP файл dojo и вспомогательные файлы (таблицы стилей, dojo.js и dojo.requires для сетки)
2) создайте переменную java в запросе / jsp или сеансе, в которой хранятся данные, которые вы хотите отобразить в сетке. Вы можете использовать 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 для извлечения JSON из бэкэнда Java EE)