`
robinsoncrusoe
  • 浏览: 746736 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

hibernate配置文件中与数据库的两种连接

    博客分类:
  • J2EE
阅读更多
Hibernate学习:hibernate.cfg.XML文件中与数据库的两种连接
(1)Hibernate自行管理连接池
编写Hibernate配置文件(hibernate.cfg.xml)

<?xml version='1.0' encoding='GBK'?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">

<hibernate-configuration>

<session-factory>
<property name="show_sql">true</property>

<property name="dialect">org.hibernate.dialect.MySQLDialect</property>

<property name="connection.driver_class">com.mysql.JDBC.Driver</property>

<property name="connection.url">
jdbc:mysql://localhost:3306/HibernateTest?useUnicode=true&amp;characterEncoding=GBK
</property>

<property name="connection.username">root</property>

<property name="connection.password">root</property>

<mapping resource="com/hibernate/User.hbm.xml"/>

</session-factory>

</hibernate-configuration>


(2)使用外部服务器提供的数据库连接池(以Tomcat为例)
分为两步:Tomcat会提供经过池处理的JDBC连接(用它内置的DBCP连接池),Hibernate通过JNDI方式来请求获得JDBC连接。
a.Tomcat把连接池绑定到JNDI,我们要在Tomcat的主配置文件(TOMCAT/conf/server.xml)中加一个资源声明:

<Context path="/quickstart" docBase="quickstart" reloadable="true">
<Resource name="jdbc/quickstart" scope="Shareable" type="Javax.sql.DataSource"/>
<ResourceParams name="jdbc/quickstart">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>

<!-- DBCP database connection settings -->
<parameter>
<name>url</name>
<!--HibernateTest 是mysql中的一个schema-->
<value>jdbc:mysql://localhost:3306/HibernateTest?useUnicode=true&amp;characterEncoding=GBK</value>
</parameter>
<parameter>
<name>driverClassName</name><value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>root</value>
</parameter>

<!-- DBCP connection pooling options -->
<parameter>
<name>maxWait</name>
<value>3000</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>100</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>10</value>
</parameter>
</ResourceParams>
</Context>

我们在这个例子中要配置的上下文叫做quickstart,它位于TOMCAT/Webapp/quickstart目录下。
Tomcat现在通过JNDI的方式:java:comp/env/jdbc/quickstart来提供连接。


b.下一步就是配置Hibernate。首先Hibernate必须知道它如何获得JDBC连接,在这里我们使用基于XML格式的Hibernate配置文件(hibernate.cfg.xml)。

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>

<property name="connection.datasource">java:comp/env/jdbc/quickstart</property>
<property name="show_sql">false</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>

<!-- Mapping files -->
<mapping resource="com/jason/User.hbm.xml"/>

</session-factory>
</hibernate-configuration>


配置好了,我们就可以编写一个Servlet来测试。

参考资料
hibernate-3.0\doc\reference\zh-cn


参考:http://www.west263.com/info/html/chengxusheji/Javajishu/20080226/46673_2.html
分享到:
评论

相关推荐

    hibernate配置数据库连接池的三种方法

    在Hibernate中配置数据库连接池,可以使数据库操作更加高效和便捷。这里有两种常见的配置方法: 1. **C3P0**: C3P0 是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。在...

    给hibernate配置文件加密解密的方案

    在一个典型的 Hibernate 应用程序中,数据库密码通常会被写入到配置文件中,以便于应用程序连接到数据库。然而,这样做存在一定的安全风险,因为配置文件可能会被未经授权的访问,从而导致数据库密码泄露。 为了...

    ssh整合带hibernate配置文件

    在这个场景下,"ssh整合带hibernate配置文件"的标题表明我们要讨论如何在SSH架构中配置Hibernate,特别是在Spring框架内进行事务管理。 首先,让我们了解SSH框架的核心组件: 1. **Spring**:这是一个全面的Java...

    hibernate 配置文件JAR包

    总结,Hibernate配置文件JAR包包含了一系列配置和映射信息,使得开发者能便捷地在Java应用中实现与数据库的交互。理解并熟练运用这些配置和API,将有助于提升开发效率,构建稳定、高效的数据库驱动应用。

    hibernate分页查询 数据库连接

    配置连接池通常在Hibernate的配置文件(如`hibernate.cfg.xml`)中完成。 在实际开发中,为了提高性能和响应速度,还可以考虑使用缓存机制,如一级缓存(Session级别的缓存)和二级缓存(SessionFactory级别的缓存...

    Hibernate配置文件.pdf

    总结起来,Hibernate配置文件是连接Java应用程序和数据库的关键,它们定义了数据库连接参数,确定了数据类型处理方式,并指明了对象和表的映射。使用`hibernate.properties`或`hibernate.cfg.xml`,开发者可以轻松地...

    hibernate+spring配置文件

    2. **Hibernate配置文件**: - **hibernate.cfg.xml**:这是Hibernate的核心配置文件,包含数据库连接信息(如URL、用户名、密码)、JDBC驱动、缓存策略、实体类映射等。 - **实体类映射文件(.hbm.xml)**:每个...

    hibernate配置文件以及类映射文件常用写法1

    《Hibernate配置文件与类映射详解》 Hibernate作为一款强大的对象关系映射(ORM)框架,简化了Java应用与数据库之间的交互。本文将深入探讨Hibernate的配置文件和类映射文件的常用写法,帮助开发者更好地理解和应用...

    Hibernate 课件_配置文件详解

    Hibernate配置文件可以采用两种格式: 1. **`hibernate.properties`**:一种基于属性文件的格式。 2. **`hibernate.cfg.xml`**:一种基于XML的格式,更常见且功能更强大。 通常情况下,推荐使用`hibernate.cfg.xml`...

    SpringBoot+hibernate+mysql+sqlserver双数据源

    本项目"SpringBoot+Hibernate+MySQL+SQLServer双数据源"正为此目的设计,它利用SpringBoot的灵活性和便利性,结合Hibernate的ORM能力,实现了对MySQL和SQLServer两种主流数据库的支持,为数据迁移、读写分离、高可用...

    Hibernate 中配置C3P0连接池

    在Java的持久层框架Hibernate中,管理数据库连接是非常重要的任务,因为频繁地创建和关闭连接会消耗大量的系统资源。为了优化这一过程,开发者通常会选择使用连接池,它能有效地复用已建立的数据库连接,从而提高...

    Hibernate多对多实例+数据库代码

    2. **配置映射文件**:使用XML映射文件(或注解)定义实体类与数据库表的映射,包括主键、属性与列的对应、以及多对多关系的中间表设置。 3. **中间表的配置**:创建一个无意义的联合主键,通常由两个外键组成,分别...

    struts与hibernate实现文件的上传与动态下载

    Struts和Hibernate是两个在Java Web开发中常用的框架。Struts主要用于MVC(Model-View-Controller)架构,提供了一种组织应用程序的方式,而Hibernate是一个对象关系映射(ORM)工具,用于简化数据库操作。本篇文章...

    有关数据库连接的系统配置技术

    首先,Hibernate配置文件有两类型:`hibernate.properties`和`hibernate.cfg.xml`。它们存储了一系列属性和对应的值,用于指导Hibernate如何与数据库建立连接。这两种文件都需要放置在Web应用的上下文类路径(WEB-...

    Hibernate常用的jar包和两个配置文件

    二、Hibernate配置文件 1. **hibernate.cfg.xml**:这是Hibernate的主要配置文件,包含了数据库连接信息、缓存设置、方言等关键配置。例如: ```xml &lt;hibernate-configuration&gt; &lt;property name="hibernate....

    Hibernate 和 Spring的结合配置文件

    在`Hibernate`与`Spring`的整合中,通常会有一个`hibernate.cfg.xml`配置文件,用来定义数据库连接信息、实体类的映射等。同时,`Spring`的配置文件(如`applicationContext.xml`)中会包含`Hibernate`的相关bean...

    HIBERNATE - 符合Java习惯的关系数据库持久化

    此外,还需要创建或修改Hibernate配置文件,该文件通常包含以下关键部分: 1. **配置文件**:用于初始化Hibernate SessionFactory,其中包含数据库连接信息、使用的方言(Dialect)、事务管理策略等。 2. **实体类...

    struts2+hibernate(文件批量上传至数据库+Ajax分页显示)

    Hibernate简化了数据库操作,通过配置文件(hibernate.cfg.xml)设定数据库连接信息,然后使用Entity类来映射数据库表。当我们需要保存或查询数据时,只需操作这些对象,Hibernate会自动完成SQL语句的生成和执行。在...

Global site tag (gtag.js) - Google Analytics