您的位置:首页 > 编程语言 > Java开发

关于Struts2 Action中get和set惹得祸。

2016-01-14 09:09 507 查看
代码:

public class RandomAction extends PageAction {

/**随机抽取**/
private IRandomService randomService;

/**责任民警**/
private IScZrmjService scZrmjService;

/**企业基本信息**/
private IQyjbxxService qyjbxxService;

private User user;

//private Map randomMap=new HashMap();

public void setRandomService(IRandomService randomService) {
this.randomService = randomService;
}

public void setScZrmjService(IScZrmjService scZrmjService) {
this.scZrmjService = scZrmjService;
}

public void setQyjbxxService(IQyjbxxService qyjbxxService) {
this.qyjbxxService = qyjbxxService;
}

/**
* 获取随机抽取责任民警列表
* @return
*/
public String queryRandomZrmjList(){
//randomMap.put("zrmjList", this.getRandomZrmjList());
//randomMap.put("qyjbxxList", this.getRandomQyjbxxList());
return "success";
}

/**
* 获取随机抽取责任民警列表
* @return
*/
@SuppressWarnings("unchecked")
public List<Zrmjfghy> getRandomZrmjList(){
ActionContext ctx = ActionContext.getContext();
HttpServletRequest request = (HttpServletRequest)ctx.get(ServletActionContext.HTTP_REQUEST);
HttpSession session= request.getSession();
user= (User)session.getAttribute(Constants.userKey);
Integer _deptId=user.getDepartid();
Zrmjfghy _getZrmj=new Zrmjfghy();
if(_deptId==2){
_getZrmj.setGxdwbm("");
}else{
_getZrmj.setGxdwbm(_deptId+"");
}
return scZrmjService.getRandomZrmjList(_getZrmj);
}

/**
* 获取随机企业列表
* @return
*/
@SuppressWarnings("unchecked")
public List<Qyjbxx> getRandomQyjbxxList(){
ActionContext ctx = ActionContext.getContext();
HttpServletRequest request = (HttpServletRequest)ctx.get(ServletActionContext.HTTP_REQUEST);
HttpSession session= request.getSession();
user= (User)session.getAttribute(Constants.userKey);
String _deptCode=user.getDepartcode();
Qyjbxx _getQyjbxx=new Qyjbxx();
_getQyjbxx.setGxdwbm(_deptCode);
return qyjbxxService.getListQyjbxx(_getQyjbxx);
}

}


View Code
首先只有queryRandomZrmjList()方法的时候程序完全可以执行。没什么问题。之后觉得这个方法中代码太多。便拆分为getRandomZrmjList()和getRandomQyjbxxList()。这下可愁死了突然间程序变得很慢。浏览器和MyEclipse会死掉。愁死人了。怎么也没找到原因。经过数小时的奋斗。在get。set变量的时候。灵感一发。方法前加get似乎有问题。。。因为Struts2内部机制。所以getRandomZrmjList()和getRandomQyjbxxList()会被当做get和set执行。讲两个方法名改成不以get和set开头之后。程序运行完全没有问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: