首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

三个servlet执行init初始化方法,如何解决先后顺序有关问题?

2012-11-08 
三个servlet执行init初始化方法,怎么解决先后顺序问题???servlet执行init初始化方法,怎么避免线程问题???

三个servlet执行init初始化方法,怎么解决先后顺序问题???
servlet执行init初始化方法,怎么避免线程问题???
  就是我有一个jsp页面,是由三个子jsp组成,其中一个java类中,需要在init方法中set一个sessiob,然后再其它两个java文件中去取它,现在的问题是,第一次打开页面时,这三个java文件都是各自加载,有时还未给session保存,其它两个就去取了,导致取空值。。。请问该怎么解决呢??新人求助,勿怪。。谢谢!11

[解决办法]
在访问你最外层这个jsp页面时request.getSession().setAttribute("lock",new Object());
首先加载的Servlet大概如下
Object lock = request.getSession().getAttribute("lock");
synchronized (lock) {
set sessiob
...
lock.notifyAll();
}
后加载的Servlet大概如下
Object lock = request.getSession().getAttribute("lock");
synchronized (lock) {
lock.wait();
get sessionb;
...
}

热点排行