yyg1107

这家伙很懒,什么都没有留下
posts(15) comments(20) trackbacks(0)
  • BlogJava
  • 联系
  • RSS 2.0 Feed 聚合
  • 管理

公告

联系方式:     



常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论

留言簿

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔分类(11)

  •  axis(1)
  •  hibernate(1)
  •  java(2)
  •  js(2)
  •  other(5)

随笔档案(8)

  • 2008年6月 (1)
  • 2007年8月 (2)
  • 2007年4月 (3)
  • 2006年11月 (2)

文章分类(37)

  •  C++Builder(3)
  •  eclipse(2)
  •  html(4)
  •  java(8)
  •  jbpm(6)
  •  JS(4)
  •  other(4)
  •  question handly!(4)
  •  web容器(1)
  •  workflow(1)

文章档案(36)

  • 2007年4月 (2)
  • 2007年3月 (1)
  • 2007年1月 (2)
  • 2006年12月 (2)
  • 2006年11月 (3)
  • 2006年10月 (11)
  • 2006年9月 (2)
  • 2006年7月 (2)
  • 2006年6月 (1)
  • 2006年5月 (1)
  • 2006年4月 (6)
  • 2006年3月 (3)

新闻档案(1)

  • 2007年1月 (1)

收藏夹(16)

  •  好的BLOG(9)
  •  收藏----blog(7)

JavaBlog

  • amigoxie

matrix

搜索

  •  

积分与排名

  • 积分 - 32774
  • 排名 - 1316

最新评论

  • 1. re: JS实现文本框输入提供选择框的提示功能-1
  • werewrewrwer
  • --wrewrwe
  • 2. re: struts启动的一个错误!
  • 更名struts-config.xml, remove && add struts capability,重新生成一个config.xml。
  • --barryken
  • 3. p
  • 42
  • --2
  • 4. re: hql语句----随机查询取头10条记录[未登录]
  • 没意思,这不就是分页的那一部分代码嘛!
  • --啊啊
  • 5. re: 第一次做成功的AXIS例子[未登录]
  • 楼主:能不能留下你的联系方式!探讨一下相关问题...
  • --hehe

阅读排行榜

  • 1. JS实现文本框输入提供选择框的提示功能-1(7293)
  • 2. 第一次做成功的AXIS例子(2431)
  • 3. 命令行创建ODBC数据源(1545)
  • 4. struts启动的一个错误!(1265)
  • 5. hibernate调用存储过程例子(1007)

评论排行榜

  • 1. JS实现文本框输入提供选择框的提示功能-1(7)
  • 2. 第一次做成功的AXIS例子(5)
  • 3. struts启动的一个错误!(4)
  • 4. 转:如何在JAVA中使用日期 (0)
  • 5. 命令行创建ODBC数据源(0)

View Post

公司系统的一个BUG!

在系统启动,第一次进入主页面的时候,要配置hibernate,
代码:

     public   static  Session currentSession()  throws  HibernateException  {
        Session session 
=  (Session) threadLocal.get();

        
if  (session  ==   null )  {
            
if  (sessionFactory  ==   null )  {
                
try   {
                    cfg.configure(CONFIG_FILE_LOCATION);
                    sessionFactory 
=  cfg.buildSessionFactory();
                }

                
catch  (Exception e)  {
                    System.err.println(
" %%%% Error Creating SessionFactory %%%% " );
                    e.printStackTrace();
                }

            }

            session 
=  sessionFactory.openSession();
            threadLocal.set(session);
        }


        
return  session;
    }
当两个客户端同时进入的时候,session = sessionFactory.openSession();会产生sessionFactory为NULL的错误。
原因:
多线程,当一个请求先进入并得到sessionFactory,就作sessionFactory.openSession(),这个执行是有一段时间的,同时第二个请求也到来了直接就到sessionFactory.openSession()这一句,sessionFactory没初始化因此为NULL。
解决:
使该方法同步synchronized。

posted on 2006-05-08 12:51 young 阅读(203) 评论(0)  编辑  收藏 所属分类: question handly!

新用户注册  刷新评论列表  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问   管理
相关文章:
  • hql语句----随机查询取头10条记录
  • 解决联动选择框中文显示问题
  • 公司系统的一个BUG!
  • struts标签select的一个问题
 
 
Powered by:
BlogJava
Copyright © young