`

(转)hibernate C3P0数据源 连接Access数据库

    博客分类:
  • S2SH
 
阅读更多
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">  
  5.        
  6.     <!-- 定义数据源Bean,使用C3P0数据源实现 -->  
  7.     <bean id="dataSource"  
  8.         class="com.mchange.v2.c3p0.ComboPooledDataSource"  
  9.         destroy-method="close">  
  10.         <!-- 指定连接数据库的驱动 -->  
  11.         <property name="driverClass" value="com.hxtt.sql.access.AccessDriver" />  
  12.         <!-- 指定连接数据库的URL -->  
  13.         <property name="jdbcUrl"  
  14.             value="jdbc:access:///c:/你的Access的绝对路径" />  
  15.         <!-- 指定连接数据库的用户名 -->  
  16.         <property name="user" value="" />  
  17.         <!-- 指定连接数据库的密码 -->  
  18.         <property name="password" value="" />  
  19.         <!-- 指定连接数据库连接池的最大连接数 -->  
  20.         <property name="maxPoolSize" value="40" />  
  21.         <!-- 指定连接数据库连接池的最小连接数 -->  
  22.         <property name="minPoolSize" value="10" />  
  23.         <!-- 指定连接数据库连接池的初始化连接数 -->  
  24.         <property name="initialPoolSize" value="10" />  
  25.         <!-- 指定连接数据库连接池的连接的最大空闲时间 -->  
  26.         <property name="maxIdleTime" value="3" />  
  27.     </bean>  
  28.     <!--定义了Hibernate的SessionFactory -->  
  29.     <bean id="sessionFactory"  
  30.         class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">  
  31.         <property name="dataSource" ref="dataSource" />  
  32.         <!-- 配置Hibernate的参数 -->  
  33.         <property name="hibernateProperties">  
  34.             <props>  
  35.                 <!-- 指定数据库的方言 -->  
  36.                 <prop key="hibernate.dialect">  
  37.                     com.hxtt.support.hibernate.HxttAccessDialect                </prop>  
  38.                 <prop key="show_sql">false</prop>  
  39.                 <prop key="hibernate.hbm2ddl.auto">update</prop>  
  40.                 <!-- JDBC执行批量更新语句的大小 清除缓存(定期清除缓存,减小压力 -->  
  41.                 <prop key="hibernate.jdbc.batch_size">30</prop>  
  42.             </props>  
  43.         </property>  
  44.         <property name="mappingResources">  
  45.             <!-- 映射的文件 -->  
  46.             <list>  
  47.                 <value>XXXX.hbm.xml</value>  
  48.                    
  49.             </list>  
  50.         </property>  
  51.     </bean>  
  52.     <!-- 配置事务管理器Bean,因为使用Hibernate持久化技术,故使用HibernateTranscationManager 事务管理器 -->  
  53.     <bean id="transactionManager"  
  54.         class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
  55.         <!--为事务管理器注入SessionFactory 引用 -->  
  56.         <property name="sessionFactory" ref="sessionFactory" />  
  57.     </bean>  
  58.     <!-- 配置事务拦截器Bean -->  
  59.     <bean id="transactionInterceptor"  
  60.         class="org.springframework.transaction.interceptor.TransactionInterceptor">  
  61.         <!--  事务拦截器bean需要依赖注入一个事务管理器 -->  
  62.         <property name="transactionManager" ref="transactionManager" />  
  63.         <property name="transactionAttributes">  
  64.             <!--  下面定义事务传播属性-->  
  65.             <props>  
  66.                 <prop key="save*">PROPAGATION_REQUIRED</prop>  
  67.                 <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>  
  68.                 <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>  
  69.                 <prop key="*">PROPAGATION_REQUIRED</prop>  
  70.             </props>  
  71.         </property>  
  72.     </bean>  
  73.   
  74.     <!-- 定义BeanNameAutoProxyCreator 后处理器 ,BeanNameAutoProxyCreator为名字匹配字符串或者通配符的bean自动创建AOP代理。-->  
  75.     <bean  
  76.         class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">  
  77.         <!--  指定对满足哪些bean name的bean自动生成业务代理 -->  
  78.         <property name="beanNames">  
  79.             <!--  下面是所有需要自动创建事务代理的bean-->  
  80.             <list>  
  81.                 <value>*Dao</value>  
  82.                 <value>*Imp</value>  
  83.                    
  84.             </list>  
  85.             <!--  此处可增加其他需要自动创建事务代理的bean-->  
  86.         </property>  
  87.         <!--  下面定义BeanNameAutoProxyCreator所需的事务拦截器-->  
  88.         <property name="interceptorNames">  
  89.             <list>  
  90.                 <!-- 此处可增加其他新的Interceptor -->  
  91.                 <value>transactionInterceptor</value>  
  92.             </list>  
  93.         </property>  
  94.     </bean>  
  95.   
  96.     <!-- 配置系统DAO组件 -->  
  97.     <bean id="xxxxDao" class="org.boss.dao.XxxxDaoHibernate">  
  98.         <!-- 依赖注入DAO组件所必需的SessionFactory引用 -->  
  99.         <property name="sessionFactory" ref="sessionFactory"></property>  
  100.     </bean>  
  101.     <!-- 配置系统的业务逻辑组件 -->  
  102.     <bean id="xxxxImp" class="org.boss.service. XxxxManagerImp">  
  103.         <property name="xxxxDao" ref="xxxxDao"></property>  
  104.     </bean>      
  105. </beans>  
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
	
	<!-- 定义数据源Bean,使用C3P0数据源实现 -->
	<bean id="dataSource"
		class="com.mchange.v2.c3p0.ComboPooledDataSource"
		destroy-method="close">
		<!-- 指定连接数据库的驱动 -->
		<property name="driverClass" value="com.hxtt.sql.access.AccessDriver" />
		<!-- 指定连接数据库的URL -->
		<property name="jdbcUrl"
			value="jdbc:access:///c:/你的Access的绝对路径" />
		<!-- 指定连接数据库的用户名 -->
		<property name="user" value="" />
		<!-- 指定连接数据库的密码 -->
		<property name="password" value="" />
		<!-- 指定连接数据库连接池的最大连接数 -->
		<property name="maxPoolSize" value="40" />
		<!-- 指定连接数据库连接池的最小连接数 -->
		<property name="minPoolSize" value="10" />
		<!-- 指定连接数据库连接池的初始化连接数 -->
		<property name="initialPoolSize" value="10" />
		<!-- 指定连接数据库连接池的连接的最大空闲时间 -->
		<property name="maxIdleTime" value="3" />
	</bean>
	<!--定义了Hibernate的SessionFactory -->
	<bean id="sessionFactory"
		class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<!-- 配置Hibernate的参数 -->
		<property name="hibernateProperties">
			<props>
				<!-- 指定数据库的方言 -->
				<prop key="hibernate.dialect">
					com.hxtt.support.hibernate.HxttAccessDialect				</prop>
				<prop key="show_sql">false</prop>
				<prop key="hibernate.hbm2ddl.auto">update</prop>
				<!-- JDBC执行批量更新语句的大小 清除缓存(定期清除缓存,减小压力 -->
				<prop key="hibernate.jdbc.batch_size">30</prop>
			</props>
		</property>
		<property name="mappingResources">
			<!-- 映射的文件 -->
			<list>
				<value>XXXX.hbm.xml</value>
				
			</list>
		</property>
	</bean>
	<!-- 配置事务管理器Bean,因为使用Hibernate持久化技术,故使用HibernateTranscationManager 事务管理器 -->
	<bean id="transactionManager"
		class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<!--为事务管理器注入SessionFactory 引用 -->
		<property name="sessionFactory" ref="sessionFactory" />
	</bean>
	<!-- 配置事务拦截器Bean -->
	<bean id="transactionInterceptor"
		class="org.springframework.transaction.interceptor.TransactionInterceptor">
		<!--  事务拦截器bean需要依赖注入一个事务管理器 -->
		<property name="transactionManager" ref="transactionManager" />
		<property name="transactionAttributes">
			<!--  下面定义事务传播属性-->
			<props>
				<prop key="save*">PROPAGATION_REQUIRED</prop>
				<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
				<prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
				<prop key="*">PROPAGATION_REQUIRED</prop>
			</props>
		</property>
	</bean>

	<!-- 定义BeanNameAutoProxyCreator 后处理器 ,BeanNameAutoProxyCreator为名字匹配字符串或者通配符的bean自动创建AOP代理。-->
	<bean
		class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
		<!--  指定对满足哪些bean name的bean自动生成业务代理 -->
		<property name="beanNames">
			<!--  下面是所有需要自动创建事务代理的bean-->
			<list>
				<value>*Dao</value>
				<value>*Imp</value>
				
			</list>
			<!--  此处可增加其他需要自动创建事务代理的bean-->
		</property>
		<!--  下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
		<property name="interceptorNames">
			<list>
				<!-- 此处可增加其他新的Interceptor -->
				<value>transactionInterceptor</value>
			</list>
		</property>
	</bean>

	<!-- 配置系统DAO组件 -->
	<bean id="xxxxDao" class="org.boss.dao.XxxxDaoHibernate">
		<!-- 依赖注入DAO组件所必需的SessionFactory引用 -->
		<property name="sessionFactory" ref="sessionFactory"></property>
	</bean>
	<!-- 配置系统的业务逻辑组件 -->
	<bean id="xxxxImp" class="org.boss.service. XxxxManagerImp">
		<property name="xxxxDao" ref="xxxxDao"></property>
	</bean>	
</beans>

 jdbc:Access_JDBC30.jar

hibernate:hibernate.jar

分享到:
评论

相关推荐

    hibernate C3P0数据源 连接Access数据库

    博文链接:https://wxinpeng.iteye.com/blog/203093

    使用C3P0连接池和DButils进Dao模式的数据库操作

    C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。其主要特点包括自动检测、测试和回收数据库连接,以防止数据库连接泄漏。C3P0通过配置参数,可以灵活地调整连接池的性能,...

    java连接access的mdb文件

    不过,为了提高效率和可维护性,建议使用更现代的JDBC驱动,如Apache的DBCP或C3P0,以及ORM框架如Hibernate或MyBatis,它们提供了更好的性能和更方便的API。 总的来说,Java连接Access MDB文件涉及到JDBC接口、ODBC...

    java web 连接数据库

    常见的连接池实现有Apache DBCP、C3P0、HikariCP等。 5. SQL语句:编写SQL语句是与数据库交互的基础。包括SELECT(查询)、INSERT(插入)、UPDATE(更新)和DELETE(删除)等基本操作,以及JOIN、WHERE、GROUP BY...

    Spring所需jar包包括数据库连接池

    **C3P0连接池**:C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。在Spring框架中,使用C3P0可以提高数据库连接的效率,避免频繁创建和关闭连接的开销。C3P0提供了许多配置...

    java中连接mysql,SqlServer,Oracle,Access数据库的代码实现

    在Java编程中,连接不同的数据库,如MySQL、SQL Server、Oracle和Access...在实际项目中,为了提高代码的可读性和可维护性,通常会使用连接池(如C3P0、HikariCP)和ORM框架(如Hibernate、MyBatis)来管理数据库连接。

    java链接acess数据库[整理].pdf

    在实际应用中,为了更好的可维护性和灵活性,通常会使用连接池管理数据库连接,如C3P0、Apache DBCP或HikariCP,并使用PreparedStatement来执行SQL语句,以防止SQL注入。此外,还可以使用ORM(对象关系映射)框架如...

    Struts2.3.6+hibernate4.3.5+Spring 4.0.5+oracle 10g的集成

    C3p0管理数据库连接,避免频繁创建和销毁连接,提升应用性能。 5. **Oracle 10g**:Oracle数据库系统的一个版本,支持SQL和PL/SQL,适用于大型企业级应用。在这个项目中,Oracle被用作数据存储,用户信息存储在名为...

    struts跟数据库的笔记,心得.rar

    1. 数据源配置:在Struts应用中,通常会通过Apache Commons DBCP或C3P0等连接池管理数据库连接。在`struts-config.xml`或`web.xml`中配置数据源,包括数据库URL、用户名、密码以及连接池参数等。 2. DAO(Data ...

    JSP连数据库数据库SQLServer

    例如,Apache的Commons DBCP或C3P0库提供了连接池实现。使用连接池,可以预先配置一组数据库连接,供多个请求复用,从而减少数据库连接的创建和销毁开销。 在JSP中,还可以使用Servlet容器提供的JNDI(Java Naming ...

    java 数据库编程源码

    8. 连接池:为了提高性能和资源管理,通常会使用连接池(如C3P0、HikariCP、Apache DBCP)。连接池预先创建一定数量的数据库连接,当程序需要时,可以从池中获取,用完后归还,避免了频繁的创建和销毁连接。 9. DAO...

    struts 数据连接池项目代码

    在数据连接池方面,常见的有HikariCP、C3P0、DBCP等。这些连接池能有效地管理数据库连接,避免频繁地创建和销毁连接,从而提高性能并减少资源消耗。项目中可能使用了其中的一种,例如HikariCP,它以其高性能和稳定性...

    ssh基本环境

    可能包含了SSH框架集成的配置文件(如struts.xml、spring.xml、hibernate.cfg.xml)、实体类(Entity)、DAO(Data Access Object)层、Service层、Action层的代码,以及可能的Oracle10g数据库的配置和c3p0连接池的...

    Java数据库系统项目开发实践\源程序第9章.rar

    如Apache的DBCP或C3P0,Spring框架的DataSource等。第9章可能涉及如何配置和使用连接池,以提高应用程序的效率。 9. ORM(Object-Relational Mapping)框架:如Hibernate或MyBatis,它们能简化Java与数据库之间的...

    JAVA WEB项目十多套包含数据库文件.zip

    7. **数据库连接池**:如C3P0、Druid等,用于高效管理和复用数据库连接,提高应用性能。 通过分析这个压缩包,开发者可以学习到如何设计和实现一个完整的JAVA Web应用,从数据库设计到前后端交互,再到服务器部署和...

Global site tag (gtag.js) - Google Analytics