由于项目里有一个servlet里用到了好多类变量,而servlet是单例的,这样的话多个用户同时点击调用这个servlet的时候就共享类变量了,最终导致结果错误。
我已经通过方法传参数的方式解决了一个其中一个变量的问题。但是几十个变量都这样传改动量大了。
请问下是否可以将这个servlet配置成非单例的,即不同的请求过来使用的servlet对象都是不一样的。
我已经通过方法传参数的方式解决了一个其中一个变量的问题。但是几十个变量都这样传改动量大了。
请问下是否可以将这个servlet配置成非单例的,即不同的请求过来使用的servlet对象都是不一样的。
解决方案 »
- jsp url传参 服务接受不到
- 使用Spring在同一个类中,有些DAO能成功注入,有些却不能注入?
- javascript调用问题
- 怎样调用web service ?
- struts2 设定action的接收方式
- 有没有类似的ajax的实例
- 在Eclipse中用JDBC连接Sql Server 2005总结(转贴)
- 求:将数据结果集转换成数组形式(bean中),原BEAN如下:现在我想将rs这一结果集放到一个二维数组中,请问高手们如何做
- 请问如何设置 JSP 页面的字符代码页?(显示汉字为问号)
- 请帮助!最好两天内搞定。本周内没有答案,就不用回答了。
- 如何防止自己的服务器和网站被别人攻击!!
- 关于如何连接本机服务服务器
但是可以变相改变把所有的对象值放入集合,集合放入ThreadLocal对象
这样所有线程之间的数据就不会冲突了
加上同步也能解决问题,而且改动量最小,但是效率低了,不推荐的
可以放在javax.servlet.http.HttpSession的attribute里面。
struts的action默认就是非单例的,用的人很多啊,也没看到很多人在叫效率低嘛。8楼是不是夸张了点
创建Action和创建Servlet这能比吗??级别不一样
哎。Action继承了Servlet?????Struts的流程是先通过ActionServlet
再由ActionServlet转交RequestProcessor
RequestProcessor根据配置,实例化Action
所以Action接口是顶层类。