动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.Java中文相关技术.
.讲述J2EE系统优化的几点体会.
.J2ME程序开发全方位基础讲解汇总.
.基于JMS的数据汇集系统的研究与实.
.WEB开发中Spring AOP实际应.
.Push信息自动启动JAVA移动程序.
.Java的封装类.
.Java反编译的研究.
.在Web应用中动态创建PDF文件.
.用Java制作网络文件下载系统.
.Java基础入门 初学Java编程的一些.
.JavaRMI入门实战.
.JAVA对象转为Java String的几种常.
.NetBeans IDE4.1 J2EE.
.增强ebXML的安全性2——内容攻击.
.实现RSS.
.函数式组合子逻辑Java parser框架.
.再论Java Swing线程.
.Java开发工具与开发环境问答.
.随机数 获取背景音乐.

Hibernate 使用外部 Connection 的问题

发表日期:2008-1-5 |



  最近在一个项目中试用了 Hibernate . 因为项目分两部分来做,在另一个部分中,已经使用了一个连接池(自行开发的).现在两部分要合在一起,于是便出现了如下问题.
  开始,我们决定使用Hibernate的外部连接方法进行数据访问:
  
  Java代码:
  1
  2 public static DbSession openSession() {...}
  3   DbSession dbSession = null;
  4   try {...}
  5    //System.out.println("session is start");
  6    ConnectionPool connectionPool = PooledConnectionFactory.getConnectionPool();
  7    Connection con = connectionPool.getConnection();
  8
  9    Session s = (Session) session.get();
  10    if (s == null) {...}
  11     s = fact.openSession(con);//在此,使用外部连接池所给的连接
  12     session.set(s);
  13    }
  14
  15    dbSession = new DbSession(s);
  16   } catch (Throwable t) {
  17    String msg = "couldn't open a hibernate session for SessionFactory '" + "'";
  18    log.error( msg, t );
  19    throw new DbException( msg + " : " + t.getMessage() );
  20   }
  21   return dbSession;
  22  }
  23
  
  关闭Session方法如下:
  java代码:
  
  1
  2 public static void closeSession() throws HibernateException,Exception{...}
  3     Session s = (Session) session.get();
  4     session.set(null);
  5     if (s != null){...}
  6       s.connection().close();
  7       s.close();
  8       System.out.println("session closing");
  9       //s = null;
  10
  11     }
  12   }
  13
  
  问题出现了.在我们很慢点击的访问下还好.只要稍刷的快些,便会出现 Can't excute Query 的错误.大概时在执行某一查询时, Session中的Connection为close.或 session 为空.很希奇,也许是这种方法在快速并发访问时,会出现这个问题.其实在Session.close()的时候,Session是不会为空的..所以在此有些不理解.怎么会取到已经关闭的连接呢.不知道大家有没有碰到过.
  
  现在,我们有两种解决办法.
  一是,将前一部分的连接池注册为DataSource,这样由Hibernate调用.
  二是,将前一部分的连接池改为Hibernate所带的DBCP等.
  这两种方法都不难更改.
  不过,只是不理解上述的BUG.所以和大家讨论一下.也希望 Robbin 能看到.解释一下.
上一篇:Hibernate 的简单 Read 性能测试 人气:387
下一篇:如何用 Hibernate 实现分页查询 人气:982
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-10 企业网站智能管理系统(TZIMS) v6
2008-10-10 拓文asp.net网站内容管理系统 v6
2008-10-10 动网论坛PHP版 v2.0++ Build 081
2008-10-10 免费时代CMS v5.0
2008-10-10 wodig第四季中文DIGG社区 v4.1 b
2008-10-10 老Y文章管理系统 v2.2 bulid 081
2008-10-10 魔法盒动感相册 ASP+SQL版 v2.0
2008-10-10 Asoft签到管理系统 v3.0 Pack1
2008-10-10 哥特人音乐网潮流留言本 v1.1
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成