`

Hibernate SQL方言 (hibernate.dialect)、数据库连接池配置

 
阅读更多

数据库

hibernate方言

DB2 org.hibernate.dialect.DB2Dialect
DB2 AS/400 org.hibernate.dialect.DB2400Dialect
DB2 OS390 org.hibernate.dialect.DB2390Dialect
PostgreSQL org.hibernate.dialect.PostgreSQLDialect
MySQL org.hibernate.dialect.MySQLDialect
MySQL with InnoDB org.hibernate.dialect.MySQLInnoDBDialect
MySQL with MyISAM org.hibernate.dialect.MySQLMyISAMDialect
Oracle (any version) org.hibernate.dialect.OracleDialect
Oracle 9i/10g org.hibernate.dialect.Oracle9Dialect
Sybase org.hibernate.dialect.SybaseDialect
Sybase Anywhere org.hibernate.dialect.SybaseAnywhereDialect
Microsoft SQL Server org.hibernate.dialect.SQLServerDialect
SAP DB org.hibernate.dialect.SAPDBDialect
Informix org.hibernate.dialect.InformixDialect
HypersonicSQL org.hibernate.dialect.HSQLDialect
Ingres org.hibernate.dialect.IngresDialect
Progress org.hibernate.dialect.ProgressDialect
Mckoi SQL org.hibernate.dialect.MckoiDialect
Interbase org.hibernate.dialect.InterbaseDialect
Pointbase org.hibernate.dialect.PointbaseDialect
FrontBase org.hibernate.dialect.FrontbaseDialect
Firebird org.hibernate.dialect.FirebirdDialect

 

<?xml version="1.0" encoding="GBK"?>

<!-- 指定Spring配置文件的Schema信息 -->

<beans xmlns="http://www.springframework.org/schema/beans"

 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

 xmlns:aop="http://www.springframework.org/schema/aop"

 xmlns:tx="http://www.springframework.org/schema/tx"

 xsi:schemaLocation="http://www.springframework.org/schema/beans 

 http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

 http://www.springframework.org/schema/tx 

 http://www.springframework.org/schema/tx/spring-tx-2.5.xsd

 http://www.springframework.org/schema/aop 

 http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">

 <!-- 定义数据源Bean,使用C3P0数据源实现 -->

 <bean id="dataSource" destroy-method="close"

  class="com.mchange.v2.c3p0.ComboPooledDataSource">

  <!-- 指定连接数据库的驱动 -->

 

  <!-- 指定连接数据库的URL -->

  <!-- 指定连接数据库的用户名 -->

  <!-- 指定连接数据库的密码 -->

  <!-- 指定连接数据库连接池的最大连接数 -->

  <!-- 指定连接数据库连接池的最小连接数 -->

  <!-- 指定连接数据库连接池的初始化连接数 -->

  <!-- 指定连接数据库连接池的连接的最大空闲时间 -->

  <!-- 连mysql 

  <property name="driverClass" value="com.mysql.jdbc.Driver"/>

  <property name="jdbcUrl"

   value="jdbc:mysql://localhost:3306/auction"/>

  <property name="user" value="root"/>

  <property name="password" value="32147"/>

  <property name="maxPoolSize" value="40"/>

  <property name="minPoolSize" value="1"/>

  <property name="initialPoolSize" value="1"/>

  <property name="maxIdleTime" value="20"/>

  -->

 

  <!--连MS-SQL-->

   <property name="driverClassName"

   value="net.sourceforge.jtds.jdbc.Driver"></property> <property

   name="url"

   value="jdbc:jtds:sqlserver://10.11.68.28:1433;DatabaseName=txDB"></property>

   <property name="username" value="sa"></property> 

   <property name="password" value="sa"></property>

 

  <!-- 连 Oracle -->

  <!-- 

  <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>

  <property name="url" value="jdbc:oracle:thin:@192.168.1.100:1521:orcl"></property>

  <property name="username" value="sa"></property>

  <property name="password" value="sa"></property>

  <property name="maxActive" value="100"></property>

  <property name="maxIdle" value="30"></property>

  <property name="maxWait" value="500"></property>

  <property name="defaultAutoCommit" value="true"></property>

  -->

 </bean>

 <!-- 定义Hibernate的SessionFactory -->

 <bean id="sessionFactory"

  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

 

  <!-- 依赖注入数据源,注入上面定义的dataSource -->

  <property name="dataSource" ref="dataSource"/>

  <!-- mappingResouces属性用来列出全部映射文件 -->

  <property name="mappingResources">

   <list>

    <!-- 以下用来列出Hibernate映射文件 -->

    <value>org/test/model/User.hbm.xml</value>

    <value>org/test/model/Book.hbm.xml</value>

   </list>

  </property>

  <!-- 定义Hibernate的SessionFactory的属性 -->

  <property name="hibernateProperties">

   <props>

    <!-- 指定数据库方言 -->

    <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>

    <!-- 

    <prop key="hibernate.dialect">

     org.hibernate.dialect.MySQLInnoDBDialect</prop>

     -->

    <!-- 是否根据需要每次自动创建数据库 -->

    <prop key="hibernate.hbm2ddl.auto">update</prop>

    <!-- 显示Hibernate持久化操作所生成的SQL -->

    <prop key="hibernate.show_sql">true</prop>

    <!-- 将SQL脚本进行格式化后再输出 -->

    <prop key="hibernate.format_sql">true</prop>

   </props>

  </property>

 </bean>

 <!-- 配置Hibernate的局部事务管理器,使用HibernateTransactionManager类 -->

 <!-- 该类实现PlatformTransactionManager接口,是针对Hibernate的特定实现-->

 <bean id="transactionManager" 

  class="org.springframework.orm.hibernate3.HibernateTransactionManager">

  <!-- 配置HibernateTransactionManager时需要依注入SessionFactory的引用 -->

  <property name="sessionFactory" ref="sessionFactory"/>

 </bean>

 <!-- 配置事务切面Bean,指定事务管理器 -->

 <tx:advice id="txAdvice" transaction-manager="transactionManager">

  <!-- 用于配置详细的事务语义 -->

  <tx:attributes>

   <!-- 所有以'get'开头的方法是read-only的 -->

   <tx:method name="get*" read-only="true"/>

   <!-- 其他方法使用默认的事务设置 -->

   <tx:method name="*"/>

  </tx:attributes>

 </tx:advice>

 <aop:config>

  <!-- 配置一个切入点,匹配指定包下所有以Impl结尾的类执行的所有方法 -->

  <aop:pointcut id="leeService"

   expression="execution(* org.crazyjava.auction.service.impl.*Impl.*(..))"/>

  <!-- 指定在leeService切入点应用txAdvice事务切面 -->

  <aop:advisor advice-ref="txAdvice" 

   pointcut-ref="leeService"/>

 </aop:config>

 <!-- 定义JavaMailSenderImpl,它用于发送邮件 -->

 <bean id="mailSender"

  class="org.springframework.mail.javamail.JavaMailSenderImpl">

  <!-- 指定发送邮件的SMTP服务器地址 -->

  <property name="host" value="smtp.163.com"/>

  <property name="javaMailProperties">

   <props>

    <prop key="mail.smtp.auth">true</prop>

    <prop key="mail.smtp.timeout">25000</prop>

   </props>

  </property>

  <!-- 指定登录邮箱的用户名、密码 -->

  <property name="username" value="spring_test"/>

  <property name="password" value="123abc"/>

 </bean>

 <!-- 定义SimpleMailMessage Bean,它代表了一份邮件 -->

 <bean id="mailMessage"

  class="org.springframework.mail.SimpleMailMessage">

  <property name="from" value="spring_test@163.com"/>

  <!-- 指定邮件标题 -->

  <property name="subject" value="竞价通知"/>

 </bean>

 <!-- 配置业务逻辑组件 -->

 <bean id="mgr"

  class="org.crazyjava.auction.service.impl.AuctionManagerImpl">

  <!-- 为业务逻辑组件注入所需的DAO组件 -->

  <property name="userDao" ref="auctionUserDao"/>

  <property name="bidDao" ref="bidDao"/>

  <property name="itemDao" ref="itemDao"/>

  <property name="kindDao" ref="kindDao"/>

  <property name="stateDao" ref="stateDao"/>

  <property name="mailSender" ref="mailSender"/>

  <property name="message" ref="mailMessage"/>

 </bean>

 <!-- 配置一个TimerTask Bean -->

 <bean id="checkWiner" class="org.crazyjava.auction.schedule.CheckWiner">

  <!-- 依赖注入业务逻辑组件 -->

  <property name="mgr" ref="mgr"/>

 </bean>

 <!-- 将TimerTask Bean:checkWiner包装成可周期性执行的任务调度Bean -->

 <bean id="scheduledTask"

  class="org.springframework.scheduling.timer.ScheduledTimerTask">

  <!-- 指定调度频率和延迟 -->

  <property name="delay" value="0"/>

  <property name="period" value="86400000"/>

  <property name="timerTask" ref="checkWiner"/>

 </bean>

 <!-- 启动实际调度 -->

 <bean id="timerFactory" 

  class="org.springframework.scheduling.timer.TimerFactoryBean">

  <!-- 下面列出所有需要调用的任务调度Bean -->

  <property name="scheduledTimerTasks">

   <list>

    <ref bean="scheduledTask"/>

   </list>

  </property>

 </bean>

</beans>

 

分享到:
评论

相关推荐

    数据库连接字符串

    tomcat连接池: context.xml配置: auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url=" jdbc:oracle:thin:@host:port:databse" username=" user " ...

    Hibernate2和Hibernate3连接池配置.doc

    总的来说,选择合适的连接池并正确配置,可以显著提升Hibernate应用程序的数据库访问性能和稳定性。在实际开发中,应根据项目需求和环境条件,权衡性能、稳定性和易用性,选择最适合的连接池方案。同时,保持对官方...

    hibernate5相关jar包

    4. SQL方言:`hibernate-dialect.jar` Hibernate支持多种数据库,每种数据库可能有不同的SQL语法。`hibernate-dialect.jar`包含不同数据库的方言类,使得Hibernate可以生成适合特定数据库的SQL语句。 5. 第三方库...

    hibernate 与 各种数据库连接配置

    - **dialect**: Hibernate方言,用于生成特定数据库兼容的SQL。例如,MySQL的方言是`org.hibernate.dialect.MySQL5Dialect`,Oracle的是`org.hibernate.dialect.Oracle10gDialect`。 - **show_sql**: 控制是否打印...

    Hibernate配置数据库连接

    - **hibernate.dialect**:指定使用的方言,不同数据库有不同的方言实现。 - **hibernate.show_sql**:是否在控制台显示 SQL 语句,默认为 false。 #### 五、高级配置技巧 为了进一步提升开发效率和优化性能,以下...

    Hibernate的配置文件

    3. **方言(Dialect)**:指定数据库对应的Hibernate方言,确保SQL语句与数据库兼容。例如: ```xml &lt;property name="hibernate.dialect"&gt;org.hibernate.dialect.MySQL5Dialect ``` 4. **缓存设置**:可以选择性...

    在Hibernate中配置Proxool连接池

    在Java开发中,使用Hibernate作为持久层框架时,为了提高数据库操作的性能和资源利用率,通常会引入连接池技术。Proxool是Apache的一个开源项目,它提供了一个轻量级的数据库连接池实现。本篇将详细介绍如何在...

    hibernate于各大数据库的连接

    5. **dialect**: Hibernate方言,用于生成适应特定数据库的SQL语句,如`org.hibernate.dialect.MySQLDialect`。 ### 数据库连接池 为了提高性能,通常会使用数据库连接池,如C3P0、HikariCP或Apache DBCP。连接池...

    hibernate连接各种数据库的方法

    ### 使用Hibernate连接各种...此外,需要注意的是,在实际部署过程中还需要考虑诸如连接池设置等因素,以提高数据库访问效率并避免资源浪费。希望本文能够帮助大家更好地理解和掌握Hibernate与数据库之间的交互方式。

    Hibernate.cfg.xml配置总结

    这个文件主要负责定义数据源、连接池、SQL方言、日志以及实体类映射等关键设置。本文将深入探讨其中的数据源配置与c3p0连接池的使用。 一、数据源配置 在Hibernate.cfg.xml中,数据源的配置分为两种方式:JDBC直连...

    hibernate--5.Hibernate配置文件详解

    在实践中,`hibernate.cfg.xml`的完整配置会根据项目需求进行调整,包括数据库连接池的配置、实体类的映射以及缓存策略等。了解并熟练掌握这些配置对于高效地使用Hibernate至关重要。 压缩包中的`0000.sql`可能是...

    Hibernate_session_factory_配置.docx

    在这个文档中,我们看到的配置涉及到了数据库连接、方言设置、SQL日志、连接池以及缓存策略等关键点。 1. **数据库连接配置**: - `hibernate.connection.driver_class`:指定JDBC驱动类,这里是`...

    Hibernate3的配置参数汇总

    - `hibernate.dialect`:指定对应数据库的方言,如`org.hibernate.dialect.PostgreSQLDialect`,以便Hibernate生成最优的SQL。 - `hibernate.show_sql`:如果设为`true`,Hibernate会在控制台输出所有执行的SQL...

    kingbaseV8驱动jar包

    此方言文件使得Hibernate能够理解Kingbase数据库的特定SQL语法和特性,从而在使用Hibernate时能够正确地执行SQL语句。 5. **使用方法** 要在Java项目中使用Kingbase驱动,你需要将相应的jar包添加到项目的类路径...

    java连接各种数据库连接串.docx

    在Java应用程序中,与各种类型的数据库进行交互是常见的需求。为了实现这种交互,我们需要...同时,为了提高安全性,推荐使用连接池(如HikariCP、C3P0或Apache DBCP)来管理数据库连接,以减少资源消耗并提高性能。

    简单配置hibernate

    总结,配置 Hibernate 主要涉及数据库连接、方言选择、连接池以及映射文件的管理。根据实际需求和环境,选择合适的配置文件格式和连接池策略是至关重要的。正确配置 Hibernate 能确保与数据库交互的高效性和稳定性。

    hibernate配置参数大全

    方言配置是Hibernate与不同类型的数据库进行交互的基础,它决定了Hibernate如何生成特定于数据库的SQL语句: 1. **`hibernate.dialect`**:指定Hibernate使用的方言类型,如PostgreSQL方言。 - 示例: ```...

    Hibernate的配置

    Hibernate 框架是 Java...总的来说,Hibernate 的配置涉及到多个方面,包括映射文件、数据库连接、方言选择和连接池管理。通过灵活配置,开发者可以根据项目需求定制 Hibernate 的行为,从而实现高效的数据持久化操作。

    经典hibernate配置详解

    Hibernate使用方言来与特定数据库进行交互,如`org.hibernate.dialect.MySQL5Dialect`对应MySQL,`org.hibernate.dialect.PostgreSQL95Dialect`对应PostgreSQL。 6. **JTA事务管理** - `transaction.factory_...

Global site tag (gtag.js) - Google Analytics