`
butnet
  • 浏览: 88340 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Hibernate使用引用数据源

阅读更多

一、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 name="SessionFactory" >
        <!-- datasource connection properties -->
        <property name="connection.datasource">java:comp/env/jdbc/olympic</property>
        <property name="hibernate.connection.autocommit">true</property>
        <!-- dialect for Microsoft SQL Server -->
        <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
        <property name="hibernate.show_sql">true</property>
        <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
    </session-factory>
</hibernate-configuration>

datasource对应server.xml中的数据源名称
二、创建SessionFactory类

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class OlympicSessionFactory {
    private static Configuration config=null;
    private static SessionFactory sf=null;
    public static Session getSession(){
        if(sf==null){
            if(config==null)
                config=new Configuration().configure();
            sf=config.buildSessionFactory();
        }
        Session s=null;
        try{
            s=sf.getCurrentSession();
        }catch(Exception e){}
        if(s==null)
            s=sf.openSession();
        return s;
    }
    public static Transaction getTransaction(){
        Transaction tr=getSession().getTransaction();
        if(tr==null)
            tr=getSession().beginTransaction();
        if(!tr.isActive())
            tr.begin();
        return tr;
    }
}   

三、注意
此hibernate的配置文件hibernate.cfg.xml文件存在在src目录下
将Hibernate的包Hibernate.jar放入到classpath中

分享到:
评论

相关推荐

    用dbcp连接池,mysql数据库,在tomcat服务器下,通过hibernate配置jndi数据源.doc

    综上所述,这个文档主要讲述了如何在Tomcat服务器上,通过Hibernate和JNDI数据源配置,使用DBCP连接池连接MySQL数据库。尽管Hibernate官方并不推荐使用DBCP,但文档仍然提供了详细的配置步骤,包括环境准备、数据库...

    Hibernate数据源的连接

    另一种是通过JNDI(Java Naming and Directory Interface)引用数据源,这样可以避免在代码中硬编码数据库连接信息,提高可维护性。例如: ```xml &lt;property name="connection.datasource"&gt;java:comp/env/jdbc/...

    spring数据源配置

    以下是一个使用Apache Commons DBCP作为数据源的例子: ```xml ``` - **`id`**: 唯一标识此Bean。 - **`class`**: 指定数据源实现类。 - **`driverClassName`**: 数据库驱动类名。 - **`url`**: 数据库...

    SSH配置多个数据源

    接下来,我们需要在Hibernate配置中引用这些数据源。在hibernate.cfg.xml中,可以这样设置: ```xml &lt;property name="hibernate.connection.datasource"&gt;dataSource1 &lt;!-- 其他Hibernate配置 --&gt; ...

    Hibernate需要注意的问题

    接下来,在Hibernate的配置文件`hibernate.cfg.xml`中,我们通过以下方式引用数据源: ```xml &lt;property name="connection.datasource"&gt;java:comp/env/jdbc/northwind ``` 这行代码告诉Hibernate使用之前在Tomcat中...

    hibernate_reference使用指南全

    介绍如何使用 Hibernate 的动态元数据映射来处理结构不确定的数据。 - **4.5 Tuplizer** Tuplizer 是 Hibernate 中用于将 ResultSet 转换为 Java 对象的组件,它提供了更多的灵活性和控制能力。 #### 七、基本...

    Ssh多数据源.doc

    此外,对于SSH框架中的Hibernate,可以通过在SessionFactory配置中使用`org.springframework.jdbc.datasource.DataSourceTransactionManager`作为事务管理器,从而实现与Spring动态数据源的集成。 总结起来,SSH多...

    spring+hibernate和spring+myBatis实现连接多个数据库,同时操作的项目

    这个项目提供了一个模板,可以帮助开发者快速搭建一个多数据源环境,无论是使用Hibernate的ORM方式还是MyBatis的SQL映射方式,都能灵活地进行数据库操作。通过这个项目,开发者可以学习到如何在实际应用中管理多数据...

    ssh双数据源登录实例

    在这个“ssh双数据源登录实例”中,我们将探讨如何在同一个项目中配置并使用两个不同的数据库数据源,这对于多租户或多模块系统来说非常常见。 首先,我们需要理解SSH框架各自的职责: 1. Spring:作为核心容器,...

    hibernate Maven仓库资源

    4. **配置Hibernate**:除了添加依赖,还需要在`persistence.xml`文件中配置Hibernate,包括数据源、实体扫描路径、JDBC驱动等信息。 5. **使用Hibernate API**:创建SessionFactory,然后通过SessionFactory创建...

    spring如何实现注入多个数据源[归类].pdf

    `MultiDataSource`将持有真实数据源的引用,并根据业务逻辑决定使用哪个数据源。`MultiDataSource`需要实现与原始数据源相同的方法,以便在不修改现有代码的情况下使用。 ```java public class MultiDataSource ...

    Hibernate开发快速入门例子源代码

    本快速入门例子源代码旨在帮助初学者快速掌握Hibernate的使用方法。 首先,`.classpath`文件是Eclipse IDE中的配置文件,它包含了项目所需的类路径信息。在Hibernate开发中,这个文件会包含Hibernate库、JDBC驱动和...

    hibernate for netbeans 6.1

    - **动态数据源**:在NetBeans中可以方便地管理数据库连接,创建、编辑和测试数据源,便于开发和测试。 - **集成HQL编辑器**:提供HQL(Hibernate Query Language)的语法高亮和智能提示,提高了查询编写效率。 - **...

    oracle的hibernate配置文件

    `hibernate1.cfg.xml`是Hibernate配置的核心文件,它定义了数据源、连接池、持久化类、缓存策略等关键信息。以下将逐个解析这些重要部分。 1. 数据源配置: 在`hibernate1.cfg.xml`中,首先需要配置数据源。对于...

    Hibernate3.2连接池

    配置时,需要在服务器的配置文件(如`context.xml`)中定义数据源,然后在Hibernate配置文件中通过JNDI查找该数据源。这种方式对服务器的配置要求较高,但可以实现更细粒度的管理和监控。 在选择连接池时,应考虑...

    hibernate一对多项目

    - `hibernate.cfg.xml`是Hibernate的配置文件,用于设置数据源、JDBC连接信息、实体类扫描路径等。确保正确配置了`&lt;mapping&gt;`标签,指定了实体类的位置。 - 如果使用注解,还需要在`hibernate.cfg.xml`中开启注解...

    tomcat_jndi_hibernate.txt

    5. **环境变量引用:**为了使 Hibernate 能够使用 JNDI 数据源,还需要在 Hibernate 的配置文件(如 `hibernate.cfg.xml` 或 `persistence.xml`)中指定数据源的 JNDI 名称。 ```xml &lt;property name="hibernate....

    maven+springmvc+springsecurity+hibernate框架整合开发源代码

    此外,项目可能还包含了分页获取数据表记录的功能,这通常使用Hibernate的Criteria API或者HQL(Hibernate Query Language)来实现,配合PageHelper等第三方库,能够轻松实现高效的分页查询。 综上所述,这个项目...

    hibernate一对多代码

    在Hibernate中,这种关系可以通过配置XML映射文件或使用注解来实现。 1. **XML映射文件配置**: 在传统的Hibernate映射中,我们通常会创建两个XML映射文件,分别对应"一"方和"多"方。例如,假设我们有一个`...

Global site tag (gtag.js) - Google Analytics