1.配置数据源
有两种方式:全局数据源或者局部数据源。
全局数据源是所有的应用都可以使用,而局部数据源为单个应用使用。
1.1全局数据源
<GlobalNamingResources>
...
<Resource name="jdbc/test" auth="Container"
type="com.mchange.v2.c3p0.ComboPooledDataSource"
maxPoolSize="30" minPoolSize="1" initialPoolSize="5" acquireIncrement="2"
idleConnectionTestPeriod="60" maxIdleTime="60"
driverClass="oracle.jdbc.driver.OracleDriver"
user="test" password="test"
jdbcUrl="jdbc:oracle:thin:@192.168.1.14:1521:oradb"
factory="org.apache.naming.factory.BeanFactory"/>
...
</GlobalNamingResources>
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的实例。
...
<property name="connection.datasource">java:/comp/env/jdbc/test</property>
<property name="session_factory_name">hibernate.session.factory</property>
...
3.编写HibernateUtil
这个类的主要作用是:
1.获取静态变量sessionFactory;
2.获取hibernate的session,也就是获取连接池中的连接。
...
static {
try {
Context ctx = new InitialContext();
sessionFactory = (SessionFactory) ctx.lookup("hibernate.session.factory");
} catch (Exception ex) {
ex.printStackTrace();
throw new RuntimeException("Exception building SessionFactory: " + ex.getMessage(), ex);
}
}
...
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) {
}
}
以上是个简单的说明,基本上满足配置应用的需要,有问题欢迎大家交流。
分享到:
相关推荐
Hibernate 是一款强大的Java对象关系映射(ORM)框架,它简化了数据库与Java应用之间的交互,使得开发人员可以使用面向对象的方式来处理数据,而无需直接编写SQL语句。在Hibernate 3.1.2版本中,这个框架已经相当...
2. **配置文件(hibernate.cfg.xml)**:这是Hibernate应用的基础配置文件,包含数据库连接信息、实体类扫描路径、缓存设置等。理解和配置好这个文件是使用Hibernate的第一步。 3. **实体类(Entity)**:实体类...
- **3.1.2 修改server.xml**:在`<GlobalNamingResources>`元素下添加C3P0数据源配置,包括数据源名称、驱动类、最大和最小连接数、获取连接的增量等参数。 - **3.1.3 修改context.xml**:在`<Context>`元素下添加...
Hibernate 是一款开放源代码的Java ORM(对象关系映射)框架,它为Java应用程序提供了一种将对象模型与数据库模型相连接的方式。通过Hibernate,开发人员可以更方便地操作数据库,减少大量手写SQL语句的工作量,并...
这个“Hibernate 3.1.2中文文档发布”提供的是该版本的详细指南,对于理解并熟练应用Hibernate具有极大的帮助。 在Hibernate 3.1.2中,包含了一系列重要的特性和改进: 1. **持久化模型**:Hibernate允许我们将...
5. Criteria 查询:除了SQL查询,Hibernate还提供了Criteria API,允许开发者以对象的方式构建查询,增强了代码的可读性和可维护性。 三、Hibernate 3.1.2 版本特性 1. 改进的性能:3.1.2版本对查询优化进行了改进...
**Hibernate 3.1.2 中文文档** Hibernate 是一个开放源代码的对象关系映射(ORM)框架,它极大地简化了Java开发人员在数据库管理系统的数据持久化工作。Hibernate3.1.2版本是该框架的一个重要里程碑,提供了许多...
《Hibernate 3.1.2 中文版学习手册》是一本深入浅出的教程,旨在帮助读者掌握Java持久化框架Hibernate的核心技术和应用。该书以PDF格式提供,适合初学者和有一定经验的开发者进行自我学习和参考。 Hibernate是Java...
**Hibernate 3.1.2**是一款非常成熟且完善的对象关系映射(Object-Relational Mapping,ORM)工具,它能帮助开发者将Java应用中的对象模型与数据库进行无缝连接,从而简化了数据访问层的开发工作。本参考手册旨在为...
根据给定的文件信息,以下是对“hibernate3.1.2英文文档(pdf)”的知识点提炼和详细解析: ### 核心知识点:Hibernate 3.1.2 的架构、配置与基本对象关系映射 #### 引言: Hibernate 是一个开放源代码的对象关系...
Hibernate3.1.2中文帮助(kk) 第一次制作
hibernate3.1.2 api
《Hibernate 3.1.2 参考手册》是一份详尽的指南,旨在帮助开发者深入理解和使用Hibernate框架。Hibernate是Java开发中的一个流行对象关系映射(ORM)工具,它简化了数据库操作,使开发者可以使用面向对象的方式来...
Eclipse Hibernate 3.1.2 插件是专门为Eclipse IDE设计的一款工具,用于简化Hibernate框架的集成和开发过程。Hibernate是一个强大的Java对象关系映射(ORM)框架,它允许开发者将数据库操作抽象化,使得在Java应用...
《Hibernate3.1.2使用说明(中文)》是一本详细介绍Hibernate 3.1.2版本的中文指南,旨在帮助开发者深入理解并有效利用Hibernate这一强大的对象关系映射(ORM)框架。Hibernate允许开发者在Java应用程序中以面向对象的...
综上所述,《Hibernate 3.1.2Chinese》教程涵盖了Hibernate的基本概念、配置、操作以及高级特性,无论是初学者还是有经验的开发者,都能从中获取到有价值的信息,提升对ORM框架的理解和应用能力。