hibernate的sessionFactory如果用单例得到的话是对同一个线程单例,在servlet中sessionFactory是放在哪里的?
2条回答 默认 最新
- licg1234 2011-06-15 20:25关注
[code="java"]public class TestSingle {
public static void main(String args[]){
new Thread(){
public void run(){
for(int i=0;i System.out.println("1-->"+SingleClass.getInstance());
try{
Thread.sleep(50);
}catch(Exception e){
e.printStackTrace();
}
}
}
}.start();new Thread(){ public void run(){ for(int i=0;i<10;i++){ System.out.println("2-->"+SingleClass.getInstance()); try{ Thread.sleep(50); }catch(Exception e){ e.printStackTrace(); } } } }.start(); }
}
class SingleClass{
private static final SingleClass singleClass=new SingleClass();public static SingleClass getInstance(){ return singleClass; }
}[/code]
结果是:
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
1-->com.infoexplorer.SingleClass@10b30a7
2-->com.infoexplorer.SingleClass@10b30a7
证明确实两个线程调用的同一个SingleClass对象本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报