<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 配置数据源,使用DBCP数据源 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<!-- MySQL数据库的驱动 -->
<property name="driveClassName" value="com.mysql.jdbc.Driver" />
<!-- 数据库的URL -->
<property name="url" value="jdbc:mysql:///newsboard" />
<!-- 指定数据库的用户名 -->
<property name="username" value="root" />
<!-- 指定数据库的密码 -->
<property name="password" value="123"/>
<!-- 指定数据库的最大连接数 -->
<property name="maxActive" value="100"/>
<!-- 指定数据库的最大空闲连接数 -->
<property name="maxIdle" value="30"/>
<!-- 指定数据库的最大等待数 -->
<property name="maxWait" value="1000"/>
<!-- 指定数据库的默认自动提交 -->
<property name="defaultAutoCommit" value="true"/>
<!-- 指定数据库的连接超时时是否启动删除 -->
<property name="removeAbandoned" value="true"/>
<!-- 指定数据库的删除数据库连接的超时时长 -->
<property name="removeAbandonedTimeout" value="60"/>
<property name="logAbandoned" value="true"/>
</bean>
<!-- 配置Hibernate的SessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 依赖注入SessionFactory所需的DataSource -->
<property name="dataSource" ref="dataSource"/>
<!-- 加载所有的映射文件 -->
<property name="mappingResource">
<!-- 下面列出所有的持久化映射文件 -->
<list>
<value>org/yeeku/model/User.hbm.xml</value>
<value>org/yeeku/model/News.hbm.xml</value>
<value>org/yeeku/model/NewsReview.hbm.xml</value>
<value>org/yeeku/model/Category.hbm.xml</value>
</list>
</property>
<!-- 下面指定Hibernate的属性 -->
<property name="hibernateProperties">
<props>
<!-- 下面指定Hibernate使用的数据库方言 -->
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDBDialect</prop>
</props>
</property>
</bean>
<!-- 配置DAO组件,必须提供DAO的实现类 -->
<bean id="dao" class="org.yeeku.dao.hibernate.BaseDAOHibernate">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- 配置DAO组件,必须提供DAO的实现类 -->
<bean id="newsDAO" class="org.yeeku.dao.hibernate.NewsDAOHibernate">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 定义事务模板类,模板类增加abstract="true"属性 -->
<bean id="txProxyTemplate" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager" ref="transactionManager">
<props>
<!-- 所以save开始的方法的事务属性 -->
<prop key="save*">PROPAGATION_REQUIRED</prop>
<!-- 所有以remove开始的方法的事务属性 -->
<prop key="remove">PROPAGATION_REQUIRED</prop>
<!-- 其他方法的事务属性 -->
<prop key="*">PROPAGATION_REQUIRED, readOnly</prop>
</props>
</property>
</bean>
<!-- 配置具体的业务逻辑层组件的事务代理 -->
<bean id="manager" parent="txProxyTemplate">
<!-- 生成业务代理之前,必须使用target制定需要生成代理的目标bean,
目标bean采用嵌套bean的方式定义 -->
<property name="target">
<bean class="org.yeeku.service.impl.BaseManager">
<!-- 定义嵌套bean所使用的DAO组件 -->
<property name="dao" ref="dao"/>
</bean>
</property>
</bean>
<!-- 配置目标bean代理对象 -->
<bean id="facade" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<!-- 为代理工厂bean注入事务管理器 -->
<property name="transactionManager" ref="transactionManager"/>
<!-- 定义代理的目标bean 此处的目标bean,必须是容器中真实存在的bean实例 -->
<property name="target" ref="facadeManager"/>
<!-- 确定生成事务代理的事务属性 -->
<property name="transactionAttributes">
<props>
<prop key="save*">PROPAGATION_REQUIRED</prop>
<prop key="remove*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED, readOnly</prop>
</props>
</property>
</bean>
</beans>
分享到:
相关推荐
ApplicationContext.xml 配置详解 ApplicationContext.xml 是 Spring 框架中用于配置应用程序的核心配置文件。通过该文件,可以定义 Bean、数据源、Session 工厂、 Hibernate 配置等相关信息,从而实现应用程序的...
spring+jpa的applicationContext.xml配置
ApplicationContext.xml是Spring框架中的核心配置文件,它是Spring的IOC(Inverse of Control,控制反转)容器的核心组件。该文件用于定义和配置Spring应用程序中的各种Bean,对于Spring应用程序的开发和维护起着至...
在Java Web开发中,`struts.xml`, `applicationContext.xml` 和 `web.xml` 是三个至关重要的配置文件,它们各自负责不同的职责,并协同工作来构建一个完整的应用框架。以下是关于这三个配置文件的详细说明。 首先,...
ssh框架事务管理applicationContext.xml配置文件
"Spring ApplicationContext.xml配置的12个技巧演示教学" Spring ApplicationContext.xml配置是 Spring 框架中非常重要的一部分,它提供了企业级服务,并且可以通过依赖注入来获得简单而有效的测试能力。然而,在...
1. **使用`@ImportResource`注解**:在Spring Boot的主配置类(通常标注了`@SpringBootApplication`)上添加`@ImportResource`注解,指定XML配置文件的路径。例如: ```java @SpringBootApplication @...
使用XML配置时,确保你的项目中包含了对`spring-context`的依赖,因为它包含了处理XML配置所需的组件。 总之,Spring Boot虽然推崇简化配置,但仍然支持XML配置,允许开发者在需要的时候引入。通过`@...
在Spring Boot应用中,我们通常使用YAML或properties文件来管理配置,但有时也需要与传统的XML配置文件集成,特别是当我们需要处理遗留系统或是利用Spring的一些特定功能时。本篇文章将详细探讨如何在Spring Boot...
在IT行业中,尤其是在Java Web开发领域,`applicationContext.xml`、`db.properties`、`log4j.properties`以及`spring-mvc.xml`等文件是非常关键的配置文件,它们各自负责不同的功能,对于一个完整的应用程序来说不...
在这个版本中,配置方式更加灵活,既支持XML配置,也支持注解配置,使得开发过程更加简便。 2. **XML配置文件的提示信息** 提示信息通常包括bean的描述、属性的解释等,这些信息可以在IDE中显示,帮助开发者快速...
《ApplicationContext.xml——Spring框架的核心配置文件详解》 在Java开发领域,Spring框架是不可或缺的一部分,它以其强大的依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented ...
本文主要针对SSH框架中Spring部分的配置文件`applicationContext.xml`的头部文件进行深入解析。 #### 二、`applicationContext.xml`文件解析 ##### 1. 文件头部结构 在给出的部分内容中,可以看到`...
然而,在某些情况下,可能需要从传统的`applicationContext.xml`配置文件中读取配置,这可能是因为历史遗留项目、集成第三方库或者为了复用已有的XML配置。本篇文章将详细探讨如何在Spring Boot中读取不同路径下的`...
首先,`applicationContext.xml`是Spring框架的核心配置文件,它定义了Bean的定义、依赖注入关系以及服务的配置。在这个特定的场景中,`applicationContext.xml`将包含与Quartz相关的配置,如Scheduler、Job、...
在Spring Boot应用中,我们通常使用YAML或properties文件来管理配置,但有时也需要与传统的XML配置文件集成,特别是当有遗留系统或者需要利用特定XML配置功能时。本篇文章将深入探讨如何在Spring Boot中读取不同路径...
国际物流云商项目server_web子工程中的applicationContext.xml配置文件。
在Spring Boot应用中,我们通常使用YAML或Java配置来管理我们的应用程序设置,但有时我们需要兼容遗留系统或者有特殊需求,需要使用XML配置文件。本文将深入探讨如何在Spring Boot项目中读取不同路径下的`...