public class RemindService {
private String taskId;
private String taskName;
public RemindService(HttpServletRequest request) {
this.taskId=request.getParameter("taskId");
this.taskName=request.getParameter("taskName");
}
[quote]三个同事说我这个是Servlet,把我给搞懵了,那么我这些做也就不会存在线程不安全的问题了对不对?他们说Servlet中定义属性是线程不安全的对吗? [/quote]
[color=blue][b]
1、这个真的不是Servlet O(∩_∩)O~
2、这个线程安全问题在于RemindService 的那2个属性,是如何被访问的。与是否是Servlet无关。 就如同一个普通的Java类,是否线程安全,应该看如何被访问。
3、Servlet中的定义属性,一般是不安全的。因为它可能是被多个Servlet实例并发访问的。[/b][/color]
不是Servlet,因为它没有继承HttpServlet
它只是用到了一个HttpServlet对象而已。
常见的封装,工具类........
显然不Servlet,看看[url=http://en.wikipedia.org/wiki/Java_Servlet]Java Servlet[/url]的解释
[quote]RemindService 中才在其他方法,在这些方法里才用到属性,其他地方根本不用,这样做应该没问题吧? [/quote]
你就把RemindService 当成普通的Java类。是否线程安全,取决于应用的环境。