关于Struts2 Action中get和set惹得祸。
2016-01-14 09:09
507 查看
代码:
View Code
首先只有queryRandomZrmjList()方法的时候程序完全可以执行。没什么问题。之后觉得这个方法中代码太多。便拆分为getRandomZrmjList()和getRandomQyjbxxList()。这下可愁死了突然间程序变得很慢。浏览器和MyEclipse会死掉。愁死人了。怎么也没找到原因。经过数小时的奋斗。在get。set变量的时候。灵感一发。方法前加get似乎有问题。。。因为Struts2内部机制。所以getRandomZrmjList()和getRandomQyjbxxList()会被当做get和set执行。讲两个方法名改成不以get和set开头之后。程序运行完全没有问题。
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开头之后。程序运行完全没有问题。
相关文章推荐
- 文章标题 java 中文传值乱码问题
- Java基础{java概述,环境变量,注释}
- java入门学习(6)—封装,继承,多态,this,super,初始代码块
- Spring技术内幕:Spring AOP的实现原理(一)
- 详解Java编程中protected修饰符与static修饰符的作用
- Spring前台查询
- Java三大主流框架概述
- myeclipse内存溢出的问题
- Binary Tree Maximum Path Sum Java 递归解法
- Java命名规则
- 增强的接口
- javaNIO
- Java 成员函数
- Java 赋值运算符 +=
- Java 字符与字符串运算
- 泡妞计划-java
- Eclipse+Pydev环境下使用utf-8编码
- 女孩 鸟交互--java
- java--属性的继承
- java--重写 final (课堂笔记)