Hibernate与各种数据库连接的配置详解

Hibernate 专栏收录该内容
4 篇文章 0 订阅

        由于项目需要,可能要涉及到很多数据库,也需要一个project修改不同的数据库来连接。由于平时经常遇到,也遇到过一些问

题,现在此做个总结,给大家一起分享。

    1、MySql连接配置

    MySql数据库的hibernate连接设置,在hibernate.cfg.xml文件中

    <hibernate-configuration>

    <session-factory>

    <!--各属性的配置-->

    <!—为true表示将Hibernate发送给数据库的sql显示出来 -->

    <property name="show_sql">true</property>

    <!-- SQL方言,这边设定的是MySQL -->

    <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>

    <!--一次读的数据库记录数 -->

    <property name="jdbc.fetch_size">50</property>

    <!--设定对数据库进行批量删除 -->

    <property name="jdbc.batch_size">30</property>

    <!--驱动程序-->

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

    <!-- JDBC URL -->

    <property name="connection.url">jdbc:mysql://localhost/dbname?

    characterEncoding=gb2312</property>

    <!--数据库用户名-->

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

    <!--数据库密码-->

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

    <!—映射文件 -->

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

    <mapping resource="com/amigo/pojo/Org.hbm.xml"/>

    </session-factory>

    </hibernate-configuration>

上面使用的驱动类是com.mysql.jdbc.Driver,需要将MySql的连接器jar包

(eg. mysql-connector-java-Dbname为数据库名字5.0.4-bin.jar)加入到classpath中。


2. Sql Server连接配置

     Sql Server数据库的hibernate在配置文件中配置。

     连接部分

    <!--驱动程序-->

    <property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>

    <!-- JDBC URL -->

    <property name="connection.url">jdbc:jtds:sqlserver://localhost:1433;DatabaseName=dbname</property>

    <!--数据库用户名-->

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

    <!--数据库密码-->

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

上例的驱动类使用的是jtds的驱动类,因此读者需要将jtds的jar包(eg. jtds-1.2.jar)加入到classpath中


3. Oracle连接配置

     Oracler数据库的hibernate在配置文件中配置。

      连接部分

     <!--驱动程序-->

    <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>

    <!-- JDBC URL -->

    <property name="connection.url">jdbc:oracle:thin:@localhost:1521:dbname</property>

    <!--数据库用户名-->

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

    <!--数据库密码-->

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


上例使用的驱动类为:oracle.jdbc.driver.OracleDriver,开发人员需要将相关的jar包(ojdbc14.jar)加入到classpath中。 


    4. DB2连接配置

   DB2数据库的hibernate在配置文件中配置。

   连接部分

   <!--驱动程序-->

   <property name="connection.driver_class"> com.ibm.db2.jdbc.app.DB2Driver</property>

   <!-- JDBC URL -->

   <property name="connection.url"> jdbc:db2://localhost:5000/sample </property>  //sample为数据库名

   <!--数据库用户名-->

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

   <!--数据库密码-->

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

 

上例使用的驱动类为:com.ibm.db2.jdbc.app.DB2Driver,开发人员需要将相关的jar包(db2jcc.jar)加入到classpath中。


5.sybase连接配置

    sybase数据库的hibernate在配置文件中配置。

    连接部分

    <!--驱动程序-->

    <property name="connection.driver_class">com.sybase.jdbc.SybDrive</property>

    <!-- JDBC URL -->

    <property name="connection.url"> jdbc:sybase:Tds:localhost:5007/myDB</property> ;//myDB为数据库名

    <!--数据库用户名-->

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

    <!--数据库密码-->

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

 

上例使用的驱动类为:com.sybase.jdbc.SybDrive,开发人员需要将相关的jar包(jconn3.jar)加入到classpath中。

 


      6. informix连接配置

    informix数据库的hibernate在配置文件中配置。

    连接部分

    <!--驱动程序-->

   <property name="connection.driver_class">com.informix.jdbc.IfxDrive</property>

   <!-- JDBC URL -->

   <property

   name="connection.url">jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver </property> ;//myDB为数据库名

   <!--数据库用户名-->

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

   <!--数据库密码-->

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

   上例使用的驱动类为:com.informix.jdbc.IfxDrive,开发人员需要将相关的jar包(ifxjdbc.jar)加入到classpath中。

 


        7.PostgreSQL连接配置

         PostpreSQL数据库的hibernate在配置文件中配置。

         连接部分

<!--驱动程序-->

<property name="connection.driver_class">org.postgresql.Driver</property>

<!-- JDBC URL -->

<property

name="connection.url">jdbc:postgresql://localhost/myDB</property>;//myDB为数据库名

<!--数据库用户名-->

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

<!--数据库密码-->

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

上例使用的驱动类为:com.informix.jdbc.IfxDrive,开发人员需要将相关的jar包(postgresql-8.1-405.jdbc3)加入到classpath中。


特别要注意:PostgreSql在默认情况下是不支持远程机器连接的,所以在使用他时需要确保它的配置支持远程访问。

    你只有在修改了配置文件postgresql.conf中的listen_addresses,且也在配置文件$PGDATA/pg_hba.conf中打开了 基于远 程电脑( host-based )的身份认证,并重新启动PostgreSQL,否则其他电脑是不能与你的PostgreSQL服务器进行连接的。

    1.在PostgreSql的安装目录下面找到PostgreSQL\9.2\data\postgresql.conf文件,如下修改:

  #listen_addresses = 'localhost'

listen_addresses = '*'

    2.在PostgreSql的安装目录下面找到PostgreSQL\9.2\data\pg_hba.conf文件,添加一行代码:

host    all       all         192.168.1.87/32      trust

如上配置智能允许IP为192.168.1.87的主机访问,如果要配置不能的连接限制,可做如下配置:
    192.168.1.87/32 或192.168.1.87 255.255.255.255,只能允许192.168.1.87的主机访问;
    192.168.1.0/24 或192.168.1.87 255.255.255.0,允许IP为192.168.1.xx 的主机可以访问;
    192.168.0.0/16  或192.168.1.87 255.255.0.0允许IP为192.168.xx.xx 的主机可以访问;
    192.0.0.0/8 或192.0.0.0 255.0.0.0 允许IP为192.xx.xx.xx的主机访问。
    地址的含义:32、24、16、8分别代表网络地址;
  


8.access连接配置

access数据库的hibernate在配置文件中配置。

连接部分

<!--驱动程序-->

<property name="connection.driver_class">sun.jdbc.odbc.JdbcOdbcDriver</property>

<!-- JDBC URL -->

<property name="connection.url">jdbc:odbc:Driver={MicroSoft..Access..Driver(*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb")</property> ;//myDB为数据库名

<!--数据库用户名-->

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

<!--数据库密码-->

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

access数据库的驱动为:sun.jdbc.odbc.JdbcOdbcDriver或者是com.hxtt.sql.access.AccessDriver

jar包:Access_JDBC30.jar  地址:http://www.hxtt.com/access.zip  

access的方言包(hibernate.jar)     地址:http://www.hxtt.com/test/hibernate.zip




  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

琴菲

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值