现在java开发很多都用到spring mvc,我现在做的项目也是,我就按照mvc的来说。
首先你的代码在开发工具中一定是有结构层次的,你会建出平行的几个包写后台代码:
a.controller;a.service;a.dao;a.dto;a.daoImpl。具体哪个包有什么作用就不细说了,然后你会在webapp下建立jsp和js文件。
这时候就可以解决你的问题了,例如你的Jsp,css,js文件都写好了,页面布局很清晰,运行代码可以看到一个完整的页面,但是用户可能有各种操作,就拿我做的这个项目代码来说,我做的有个页面的信息是分层次的,例如现在有三个职级,1,2,3;1职级的可以看到所有信息,2职级的只能看到2和3的,3只能看到自己的;这种需求就需要在后台写代码来实现了,一般是在service里面写,我把easyUI的分页功能重写了一下,然后就可以实现这个需求了,下面是代码
public MapqueryGisRadio(String start,String end,String user,String key,PageObj pageObj){
MaprsMap = new HashMap ();
//得到所有广播
ListallRadioList = gisRadioConfDao.queryGisRadio(start, end, user, key);
/**
* 过滤条件:只能看到自己机构及子机构的广播
*/
//查询用户所在机构及其子机构
AuthInfo authInfo = SessionContent.getAuthInfoLocal();
Listorg = new ArrayList ();
org = orgService.getAllOrgsByUserId(authInfo.getUserId());
//MapqueryMap = gisRadioConfService.queryGisRadio(start, end, user, key, pageObj);
//ListallRadioList = (List ) queryMap.get("rows");
//最终要显示的广播
ListresultRadioList = new ArrayList ();
int rSize=allRadioList.size();
int oSize=org.size();
//根据部门id相等来进行过滤
for(int i=0;iString[] relationpartArrayS=null;//初始数组
long[] relationpartArrayL=null;//转换后数组
int flag=0;
//得到库里的RelationDepartment,分割成一个个的id存入一个数组
relationpartArrayS = allRadioList.get(i).getRelationDepartment().split("\\|");
int len = relationpartArrayS.length;
relationpartArrayL = new long[len];
for(int k=0;k//将部门id数组转换成long类型数组
relationpartArrayL[k]=Long.parseLong(relationpartArrayS[k].trim());
}
for(int j=0;jfor(int t=0;t if(org.get(j).getOrgId()==relationpartArrayL[t]){
//将满足条件的list元素放入结果list里面
resultRadioList.add(allRadioList.get(i));
flag++;
break;
}
}
if(flag==1){
break;
}
}
}
int startIndex = (pageObj.getPage()-1) * pageObj.getRows();
int endIndex=startIndex+pageObj.getRows();
//要放在每一页上的广播
Listrows = new ArrayList ();
if(resultRadioList.size()>endIndex){
for(int i=startIndex;irows.add(resultRadioList.get(i));
}
}else{
for(int i=startIndex;irows.add(resultRadioList.get(i));
}
}
//pageObj.setTotal(resultRadioList.size());
rsMap.put("rows", rows);
rsMap.put("total", rSize);
return rsMap;
}
后台排序就使用数据库的order by呗,前台调整,可以通过调整修改order by标识