0
我沒有實現使用Spring MVC控制器來模擬this tutorial。如何使用Spring控制器填充一個jeasyui DataGrid
DataGrid未使用檢索到的Java/Spring控制器數據填充其行。我沒有複製我的entyre JSP,其代碼與上面的示例非常相似。
Spring「ControlTeste」如下負責從數據庫中檢索數據,構建Json字符串(使用Gson)並將其作爲響應發送。在教程中,這個任務是用PHP完成的(直接從視圖看,沒有「控制器」層)。
@RequestMapping(value = "/ControlTeste", method = RequestMethod.GET)
public @ResponseBody String teste(Status Status, HttpSession httpSession) {
Gson gson = new GsonBuilder().setDateFormat("dd-MM-yyyy").setPrettyPrinting().create();
Session sess = (Session) httpSession.getAttribute("hibSess");
StatusDAO staDao = new StatusDAO(sess);
List<Status> lista = staDao.findAll();
String gStatus = new String();
try{
gStatus = gson.toJson(lista);
System.out.println(gStatus);
}
catch(Exception e){
e.printStackTrace();
}
return gStatus;
}
JSON的產生是:
{
"id": 2,
"descricao": "Novo Status",
"sigla": "STA",
"estadoFinal": true,
"erro": true
}
和DataGrid的配置(在JSP)是:
<script type="text/javascript">
$('#dg').edatagrid({
url: 'ControlTeste',
saveUrl: 'StatusCreate',
updateUrl: 'StatusUpdate',
destroyUrl: 'StatusDelete'
});
<table id="dg" title="Cadastro de Status" class="easyui-datagrid"
style="width: 700px; height: 250px" url="ControlTeste"
toolbar="#toolbar" pagination="true" rownumbers="true"
fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="id" width="20">ID</th>
<th field="sigla" width="40">Sigla</th>
<th field="descricao" width="50">Descrição</th>
<th field="erro" width="30">Erro?</th>
<th field="estadoFinal" width="30">Estado Final?</th>
</tr>
</thead>
</table>
<div id="toolbar">
<a href="javascript:void(0)" class="easyui-linkbutton"
iconCls="icon-add" plain="true" onclick="novo()">Novo</a> <a
href="javascript:void(0)" class="easyui-linkbutton"
iconCls="icon-edit" plain="true" onclick="editar()">Editar</a> <a
href="javascript:void(0)" class="easyui-linkbutton"
iconCls="icon-remove" plain="true" onclick="remover()">Remover</a>
</div>
現在我感興趣的只是 「ControlTeste」 控制器,由於它負責檢索數據以填充DataGrid。
感謝您的幫助!