读书人

实战tomcat5上hibernate3.1.2应用采

发布时间: 2012-10-26 10:30:58 作者: rapoo

实战tomcat5下hibernate3.1.2应用,采用jndi方式获取c3po连接池

1.配置数据源
有两种方式:全局数据源或者局部数据源。
全局数据源是所有的应用都可以使用,而局部数据源为单个应用使用。
1.1全局数据源

?

?

?

1.2局部数据源
将context.xml文件放置在F:\tomcat-5.5.25\webapps\strutsrcstudy\META-INF之下,具体配置可见<<Tomcat中数据源的配置及原理>>,我的博客中也转载了这篇文章,大家可以参考下。

?


2.配置hibernate.cfg.xml
connection.datasource是数据源配置,和上面全局数据源对应。
session_factory_name是jndi名,通过这个名字我们可以得到SessionFactory的实例。


?

?


4.编写监听器:HibernateAppListener
在应用初始化时,生成一个SessionFactory实例。
因为在单个应用的生命周期中,通常情况下SessionFactory保持一个实例即可。
这里为了提高应用的响应速度,所以采用了在应用初始化时作这个工作。

?

import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;import org.apache.log4j.Logger;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class HibernateAppListener implements ServletContextListener { private static SessionFactory sessionFactory = null;  public void contextInitialized(ServletContextEvent ce) {  Logger logger = Logger.getLogger("HibernateAppListener");  try {   sessionFactory = new Configuration().configure().buildSessionFactory();  } catch (Exception e) {   logger.error(e);  } } /* Application Shutdown Event */ public void contextDestroyed(ServletContextEvent ce) { }}

?

以上是个简单的说明,基本上满足配置应用的需要,有问题欢迎大家交流。

读书人网 >软件架构设计

热点推荐