今天遇到一个jsp多线程同步问题,最后发现是 在页面中使用了 实例变量:
Date strssDate = new Date();
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
后来才发现 SimpleDateFormat 不是线程安全的,所以,这里就容易出问题了。
将这些 实例变量 写到 方法里,使其成为局部变量。另外,在该方法上 使用 synchronized。
查阅了很多资料:
www.jcwcn.com/article-17352-1.html
http://www.wzsky.net/html/Program/jsp/19623.html
http://www.west263.com/www/info/16632-1.htm
http://www.cnblogs.com/GnagWang/archive/2011/02/27/1966606.html