action中不要用new创建对象
来源:互联网 发布:《网络基础知识》 编辑:程序博客网 时间:2024/06/09 19:45
我的action采用singlton单例模式
public class VcardCollectionAction extends BaseAction{
我定义了一个私有属性,该属性用户封装查询条件:
private OVcardCollectionSearch collectionSearch = new OVcardCollectionSearch();
省略get/set方法
public String listAll(){
Account account = (Account) getRequest().getSession().getAttribute("loginUser");
collectionSearch.setAccountId(account.getId());
page = vcardCollectionService.list(pageNum, numPerPage, collectionSearch);
//System.out.println(classifyId);
return LIST;
}
public String showByClassifyId(){
collectionSearch.setVcardClassifyId(classifyId);
Account account = (Account) getRequest().getSession().getAttribute("loginUser");
collectionSearch.setAccountId(account.getId());
page = vcardCollectionService.list(pageNum, numPerPage, collectionSearch);
//System.out.println(classifyId);
return LIST;
}
}
当请求多次访问这个单实例action的时候,共享同一个collectionSearch 对象,问题由此产生,我第一次访问showByClassifyId方法,给collectionSearch对象封装了accountId和classifyId,下一次请求访问listAll方法,虽然没有给collectionSearch 对象设置classifyId,但由于多次请求共享一个collectionSearch 对象,最终导致查询到的数据和上一次的请求相同!!!- action中不要用new创建对象
- js中new操作符创建对象
- 不要提前创建对象
- 不要创建String对象
- C++ 用new动态创建对象
- C++ 用new动态创建对象
- Objective-C 用new来创建对象
- 创建类对象时:用new和不用new区别!
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别 .
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- C++用new和不用new创建类对象区别
- 从登录界面开始
- ASP.NET页面之间传值的常用方法
- java 图片处理
- android cocos2dx环境搭建好以后,运行hellocpp出现了如下错误
- 编写计算“两个整数的最大公约数”JAVA程序
- action中不要用new创建对象
- Python--WindowsError
- Cocoa Touch 入门记——《精通 iOS 开发》学习心得(4) [应用程序设置]
- 利用C++11的function和bind功能,实现QStandardItemModel的通用遍历函数
- 提出不到一年
- 验证码实现
- .exe中触发一个断点,堆损坏
- svn在windows客户端安装以后在linux下svn co code_url报错处理
- windows下ORA-12560: TNS: 协议适配器错误处理办法