<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-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.0.xsd
">
<!-- <aop:aspectj-autoproxy /> -->
<context:property-placeholder location="jdbc.properties"></context:property-placeholder>
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${jdbc.driverClassName}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="user" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="mappingResources">
<list>
<value>com/sheng/hibernate/Aaddress.hbm.xml</value>
<value>com/sheng/hibernate/Aperson.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
<prop key="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</prop>
<prop key="hibernate.c3p0.max_size">20</prop>
<prop key="hibernate.c3p0.min_size">2</prop>
<prop key="hibernate.c3p0.timeout">2000</prop>
<prop key="hibernate.c3p0.max_statements">10</prop>
</props>
</property>
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<bean id="trasactionTemplate" class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="transactionManager"></property>
</bean>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="insert" class="com.sheng.test.bean.Insert">
<!-- <property name="transactionTemplate" ref="trasactionTemplate"></property> -->
<property name="hibernateTemplate" ref="hibernateTemplate"></property>
</bean>
<!-- spring 1.x 事务处理
<bean id="myTransactionProxyBean" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" lazy-init="true">
<property name="transactionManager" ref="transactionManager"></property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<bean id="insertPersonTransaction" parent="myTransactionProxyBean">
<property name="target" ref="insert"></property>
</bean>
-->
<!-- spring 1.0 aop
<bean id="sayHelloBeforeAOP" class="com.sheng.aop.SayHello">
</bean>
<bean id="sayTarget" class="com.sheng.aop.SayImp">
</bean>
<bean id="afterSay" class="com.sheng.aop.AfterAdvice"></bean>
<bean id="say" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="interceptorNames">
<list>
<value>sayHelloBeforeAOP</value>
<value>afterSay</value>
</list>
</property>
<property name="proxyInterfaces">
<list>
<value>com.sheng.aop.inner.ISay</value>
</list>
</property>
<property name="target">
<ref bean="sayTarget" />
</property>
</bean>
-->
<!-- spring 2.x aspect -->
<bean id="beforAdvice" class="com.sheng.aspect.aop.MethodBeforeAdvice"></bean>
<!-- spring 2.x 事务处理 -->
<aop:config proxy-target-class="true">
<aop:advisor advice-ref="testAdvice" pointcut="execution(* com.sheng.test.bean.Insert.insert*()) "/>
<!-- spring 2.x aop -->
<aop:aspect ref="beforAdvice">
<aop:before method="sayHello" pointcut="execution(* com.sheng.test.bean.Insert.insert*())" />
</aop:aspect>
</aop:config>
<tx:advice id="testAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="insert*" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
</beans>
分享到:
相关推荐
Java架构师之源码分析专题SpringBoot2.x、Spring5、SpringMVC、Mybatis源码分析,源码中我们可以学到很多东西,学习别人高效的代码书写、学习别人对设计模式的熟练使用、学习别人对整个架构的布局等等。目前...
6. **Spring2.pdf**:这可能是Spring 2.x版本的官方文档或者一个深入教程,因为Spring框架随着时间发展,每个版本都有新的特性和改进,Spring 2.x是一个重要的里程碑。 综上所述,这些资源对于想要学习或提升Spring...
分公司2.x:弹簧靴2.0.5.释放 弹簧云finchley.sr1;分公司nacos:弹簧云阿里巴巴;Master 分支已经改为从 nacos merge 代码,今后更新的中心也会放在 nacos 分支上。整体架构项目目录结构项目截图后端环境JDK1.8 ...
23.4.2 Spring WebSocket允许的来源 186 23.4.3添加CSRF到Stomp头 186 23.4.4在WebSockets中禁用CSRF 187 23.5使用SockJS 187 23.5.1 SockJS和框架选项 187 23.5.2轻松放松CSRF 188 第五部分授权 190 24.授权体系...
为了使 MyBatis 与 Spring 共同工作,需要在 Spring 应用上下文中定义至少两样东西:一个 `SqlSessionFactory` 和至少一个数据映射器类。 在 MyBatis-Spring 中,`SqlSessionFactoryBean` 用于创建 `...
要了解 Spring Web Flow 是什么东西,最好的办法莫过于查看示例,图 2 展示了一个简化的购物车的流 程。 图 1 购物车示例 图 2 所示流程用 Spring Web Flow 2.0 的配置文件表示如下: 清单 1 用 Spring Web Flow ...
然后,在 Spring 应用上下文中定义至少两个东西:一个 SqlSession,一个 MyBatis 数据映射器。 最后,MyBatis-Spring 的开发离不开社区的支持和贡献。本手册中也感谢了那些为项目作出贡献的人们,並欢迎更多的人...
在花了一些时间试图使我的AngularJS 1.x项目尽可能整洁之后,我决定利用TypeScript语言的出色可读性,并使用Spring(和其他Java框架)开发人员非常熟悉的功能来丰富它:基于类型的依赖注入。 如果您有一些Spring编程...
springboot内部绑定了嵌入式http servlet容器Jetty,主体框架基于spring,而spring除了Ioc(依赖注入)、Aop(切面)外,其它与http相关的东西都是基于Servlet和Filter的,而Servlet、Filter是servlet容器Jetty按照...
本文将详细讲解如何撰写一份吸引人的简历,以及提供一些实用的简历模板。首先,简历的基本结构包括个人信息、教育背景、工作经验、项目经历以及技能清单。 **个人信息**: 这部分应简洁明了,包含姓名、联系方式...
spring-generator一个用于生成Spring项目的东西,包含web.xml,根上下文和web上下文,以及Hibernate的基本配置。基本使用在下载压缩包,解压。编辑conf.properties文件,其中groupId, artifactId字段为必填,其余...
很棒的Sprint Boot子 精选的Spring Boot,资源和闪闪发光的东西的精选清单。内容讲解之后,Spring Boot开始工作项目建立描述Gradle将Spring Boot与JDBC集成 Gradle将Spring Boot与JPA集成Gradle将Spring Boot与...
Spring Boot 全面支持开发 RESTful 程序,通过不同的注解来支持前端的请求,除了经常使用的注解外,Spring Boot 还提供了一些组合注解。这些注解可以帮助简化常用的 HTTP 方法的映射,并更好地表达被注解方法的语义...
Spring Boot 整合 JPA 过程解析 Spring Boot 是一个基于 Java 的开源框架,提供了一种快速构建生产级别的基于 Spring 的应用程序的方法。JPA(Java Persistence API)是 Java 平台上的一种持久化 API,用于将 Java...
Spring-boot库可使用Firebase集成安全性。 此外,它还使用内部微服务之间的预共享密码来提供基本身份验证。 介绍 这些项目使用X-Firebase-Auth请求标头提供firebase安全性。 使用FirebaseAuth.verifyIdTokenAsync(id...
* We are going for a spring outing. 我们将要去春游。:该句型用于描述自己的计划或打算,使用be going to do 句型。 * We’re going to climb a mountain.我们打算去爬一座山。:该句型用于描述自己的计划或打算...
Struts 1.x有一个`FileUpload`动作,而在Struts 2中,文件上传是通过`CommonsFileUpload`库实现的,该库是Apache Commons项目的一部分,提供了处理HTTP多部分请求的能力。 在Struts 2中,你通常需要配置一个`...
目前工具在Oracle 11g、Microsoft SQLServer 2012、MySQL 5.x、DB2 10.x、Sybase 15.x、PostgreSQL 9.x、Derby 10.x上通过了测试。 2、通过生成器创建BO类及DAO层代码 这是一个配合dbking的代码...