<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="txProxyTemplate" abstract="true" lazy-init="true"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="save*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="remove*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
<!-- Generic manager that can be used to do basic CRUD operations on any objects -->
<bean id="baseManager" parent="txProxyTemplate">
<property name="target">
<bean
class="com.wondtech.framework.service.impl.BaseManagerImpl">
<property name="baseDao" ref="baseDao" />
</bean>
</property>
</bean>
<!-- authorization proxy bean -->
<bean id="sysUserAuthorization" parent="txProxyTemplate">
<property name="target">
<bean
class="com.wondtech.core.authorization.service.impl.AuthorizationProxyImpl">
<property name="sysLogDao" ref="sysLogDao" />
<property name="roleFunctiondao"
ref="sysRoleFunctionDao" />
<property name="userRoledao" ref="sysUserRoleDao" />
<property name="userPermissdao" ref="sysUserPermissDao" />
<property name="functiondao" ref="sysFunctionDao" />
</bean>
</property>
<property name="transactionAttributes">
<props>
<prop key="save*">
PROPAGATION_REQUIRED,+ManagerException
</prop>
<prop key="delete*">
PROPAGATION_REQUIRED,-ManagerException
</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
</beans>
分享到:
相关推荐
在 Spring 1.x 中,主要通过 AOP 方式实现事务管理,这种方式虽然有效,但在配置上较为繁琐,特别是对于每一个 bean 都需要进行单独配置。而到了 Spring 2.0,引入了更加简洁高效的声明式事务管理机制。 #### 二、...
Spring框架2.0版本的压缩包包含了多个目录,每个目录都有其特定的功能与用途,下面将对这些目录进行详细介绍。 #### 二、具体目录说明 1. **aspectj 目录** - **功能描述**:此目录包含了Spring支持AspectJ所需的...
2. **模块化**:Spring框架由多个模块组成,每个模块都可以单独使用,可以根据项目需求进行选择。 3. **可测试性**:通过依赖注入,可以轻松地创建单元测试,提高代码质量。 4. **非侵入性**:Spring不强制使用特定...
这个整合的jar包为开发者提供了一站式解决方案,免去了单独下载和配置每个框架的麻烦。但是,随着技术的发展,Spring Boot和Spring Data JPA等新工具的出现,使得这样的传统整合方式逐渐减少,但理解这种整合方式...
SSH(Struts2、Spring2.0、Hibernate3.0)是Java...使用这个jar包,可以减少单独导入每个框架所需jar文件的步骤,提高开发效率。不过,实际使用时还需要根据具体项目需求,结合各自的配置文件和代码进行适配和定制。
1. 动态Action:Struts2.0允许开发者动态创建Action类,无需为每个HTTP请求创建一个单独的Action类。通过使用OGNL(Object-Graph Navigation Language)表达式,可以灵活地绑定请求参数到Action对象。 2. 模板引擎...
Spring Web Flow采用了一种基于状态机的设计模式来定义流程,每个流程都由一系列的状态组成。这些状态包括`view-state`、`transition`、`end-state`等。 ##### 3.2 流程定义 - **flow**:定义一个Flow的基本结构,...
分割器将输入数据分割成多个子集,每个子集在单独的线程或进程中处理,提高处理效率。 6. **监听器(Listeners)**:Spring-Batch 提供了各种监听器接口,如JobExecutionListener和StepExecutionListener,可以在...
每个数据源都需要单独的JdbcTemplate实例或EntityManagerFactory。 7. **配置文件**:在`application.properties`或`application.yml`中,为每个数据源定义配置,例如`spring.datasource.primary.*`和`spring....
通过这些jar包,开发者可以直接引入到项目中,省去了单独下载和配置每个框架的过程。"SSH2框架jar包"可能包含了所有这三个框架的库文件,以及其他必要的依赖,如数据库驱动等。在使用时,开发者只需将这些jar包添加...
JDBC datasources及其它相关的资源,进行完整的事务管理和异常的包装,在此用了Spring的事物模板(TransactionTemplate)实现,可分离数据访问和事物处理,提高业务对象的可复用性,采用getHibernateTemplate()方法...
JDBC datasources及其它相关的资源,进行完整的事务管理和异常的包装,在此用了Spring的事物模板(TransactionTemplate)实现,可分离数据访问和事物处理,提高业务对象的可复用性,采用getHibernateTemplate()方法...
JDBC datasources及其它相关的资源,进行完整的事务管理和异常的包装,在此用了Spring的事物模板(TransactionTemplate)实现,可分离数据访问和事物处理,提高业务对象的可复用性,采用getHibernateTemplate()方法...
每个学生都有单独的登录名,意味着平台采用了**用户身份验证**和**授权机制**。这通常涉及到使用**session**或**token**来保持用户会话,并通过**加密技术**确保用户的登录信息安全。可能还使用了**OAuth2.0**或**...
同时每个查询都可以针对batch、fetchSize、maxResult、缓存、级联操作类型等进行调整和开关,可以将性能调到最优。可在主流数据库之间任意切换 支持Oracle、MySQL、Postgres、MSSQL、GBase、SQLite、HSQL、Derby等...
- **灵活性高**:每个框架都可以单独使用,也可以与其他框架结合使用,根据项目需求灵活调整。 - **社区支持**:作为开源框架,SSH拥有庞大的开发者社区支持,可以轻松获取到各种教程、文档以及遇到问题时的帮助。 -...