自己搞了一下午,终于用JAVA实现了数据网格。记录一下实现的代码。(PS:此处的easyui是1.5版本,楼主只贴了核心的代码)
实现图
JSP页面
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
< head >
//权限列表
$( document ).ready(function(){
var parentId = 0;
$('#tt').treegrid({
url:'queryPrivilege.action?parentId='+parentId,
idField:'id',
treeField:'RecordStatus',
columns:[[
{title:'id',field:'id',width:180},
{field:'RecordStatus',title:'RecordStatus',width:180} ,
{field:'PrivilegeOperation',title:'PrivilegeOperation',width:180}
]],
onBeforeExpand:function(row){
//动态设置展开查询的url
$(this).treegrid('options').url = 'queryPrivilege.action?parentId='+row.id;
}
});
})
</ script >
</ head >
< body >
< table id = "tt" style = "width:600px;height:400px" ></ table >
</ body >
|
ACTION层代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
//输出
public PrintWriter out() throws IOException{
HttpServletResponse response=ServletActionContext.getResponse();
response.setContentType( "text/html" );
response.setContentType( "text/plain; charset=utf-8" );
PrintWriter out= response.getWriter();
return out;
}
public String queryPrivilege() throws IOException{
returnpd= "ok" ;
JSONArray array = new JSONArray();
array = privilegeService.getMenu(parentId);
String str=array.toString();
out().print(str);
out().flush();
out().close();
return returnpd;
}
|
Service层接口代码
1
|
JSONArray getMenu( int parentId);
|
ServiceImpl层代码(实现service层)
1
2
3
4
5
|
@Override
public JSONArray getMenu( int parentId) {
// TODO Auto-generated method stub
return (JSONArray)privilegeDao.getMenu(parentId);
}
|
Dao层代码
1
|
JSONArray getMenu( int parentId);
|
DaoImpl层代码(实现Dao层)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
@Override
public JSONArray getMenu( int parentId) {
// TODO Auto-generated method stub
String hql= "" ;
JSONArray array= new JSONArray();
hql= "FROM Privilege p WHERE p.parentID = " +parentId;
for (Privilege privilege:(List<Privilege>)(getSession().createQuery(hql).list())){
JSONObject jo= new JSONObject();
jo.put( "id" , privilege.getId());
jo.put( "RecordStatus" , privilege.getRecordStatus());
jo.put( "parendId" ,privilege.getParentID());
if (privilege.getParentID()== 0 ){
jo.put( "state" , "closed" );
}
else {
jo.put( "state" , "open" );
System.out.println(parentId);
}
array.add(jo);
}
return array;
}
|
数据库一览
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。