`
lalage
  • 浏览: 938 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类

关于spring配置jpa事物了,但是我想加入aop切面留着做日志,不知道怎么加入

阅读更多
<?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:jdbc="http://www.springframework.org/schema/jdbc" 
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jpa="http://www.springframework.org/schema/data/jpa" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"
default-lazy-init="true">

<description>Spring公共配置 </description>

<!-- 使用annotation 自动注册bean, 并保证@Required、@Autowired的属性被注入 -->
<context:component-scan base-package="com.zz.auth">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>

<!-- Jpa Entity Manager 配置 -->
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="jpaVendorAdapter" ref="hibernateJpaVendorAdapter"/>
<property name="packagesToScan" value="com.zz.auth.entity"/>
<property name="jpaProperties">
<props>
<!-- 命名规则 My_NAME->MyName -->
<prop key="hibernate.ejb.naming_strategy">org.hibernate.cfg.ImprovedNamingStrategy</prop>
</props>
</property>
</bean>

<bean id="hibernateJpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="database" value="SQL_SERVER" /> 
        <property name="showSql" value="true" />
</bean>

<!-- Jpa 事务配置 -->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>

<!-- Spring Data Jpa配置 -->
<jpa:repositories base-package="com.zz.auth.dao"  transaction-manager-ref="transactionManager" entity-manager-factory-ref="entityManagerFactory"/>
  
<!-- 使用annotation定义事务 -->
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />

<!-- DBCP连接池 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="defaultAutoCommit" value="false" />
</bean>
</beans>


这事原来的啊!代码!我想加入aop切面作为才做日志!不知道怎么下手!请高手讲解一下。
分享到:
评论
3 楼 jinnianshilongnian 2013-03-22  
报什么错。
<aop:config> ---> <aop:config proxy-target-class="true">
2 楼 lalage 2013-03-22  
jinnianshilongnian 写道
直接写aop就行  跟有没有事务切莫没什么区别
http://jinnianshilongnian.iteye.com/blog/1420689

<?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:jdbc="http://www.springframework.org/schema/jdbc" 
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jpa="http://www.springframework.org/schema/data/jpa" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd"
default-lazy-init="true">

<description>Spring公共配置 </description>

<!-- 使用annotation 自动注册bean, 并保证@Required、@Autowired的属性被注入 -->
<context:component-scan base-package="com.zz.auth">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>

<!-- Jpa Entity Manager 配置 -->
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="jpaVendorAdapter" ref="hibernateJpaVendorAdapter"/>
<property name="packagesToScan" value="com.zz.auth.entity"/>
<property name="jpaProperties">
<props>
<!-- 命名规则 My_NAME->MyName -->
<prop key="hibernate.ejb.naming_strategy">org.hibernate.cfg.ImprovedNamingStrategy</prop>
</props>
</property>
</bean>

<bean id="hibernateJpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="database" value="SQL_SERVER" /> 
        <property name="showSql" value="true" />
</bean>

<!-- Jpa 事务配置 -->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>

<!-- Spring Data Jpa配置 -->
<jpa:repositories base-package="com.zz.auth.dao"  transaction-manager-ref="transactionManager" entity-manager-factory-ref="entityManagerFactory"/>
  
<!-- 使用annotation定义事务 -->
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />

<context:property-placeholder
ignore-resource-not-found="true" location="classpath*:/application.properties" />

<!-- DBCP连接池 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="defaultAutoCommit" value="false" />
</bean>


<!-- 配置aspect切面类 -->
<bean id="userAspect" class="org.wiki.spring.aspect.Aspect" />

    <!-- 配置AOP -->
<aop:config>
    <!-- 配置aspect切面类 -->
<aop:aspect ref="userAspect">
    <!-- 配置pointcut,即切入点,对哪些类的哪些方法起到AOP的作用 -->
<aop:pointcut id="userServiceMethods"
expression="execution(* com.zz.auth.service.impl.*.*(..))" />
<!-- 配置advice,即Aspect类中的logging()方法,这里采用在业务方法执行前进行拦截 -->
<aop:before method="logging" pointcut-ref="userServiceMethods" />
</aop:aspect>

</aop:config>
</beans>

我就这么写的不对啊!连我原来的login都登陆不上去了
1 楼 jinnianshilongnian 2013-03-22  
直接写aop就行  跟有没有事务切莫没什么区别
http://jinnianshilongnian.iteye.com/blog/1420689

相关推荐

    spring-boot入门实例(jpa+postgresql+aop实现valid切面式校验)

    这个入门实例将向我们展示如何使用Spring Boot与JPA(Java Persistence API)、PostgreSQL数据库以及AOP(面向切面编程)来实现数据验证。 首先,让我们详细了解一下Spring Boot。Spring Boot的核心理念是“约定...

    spring注解+spring data jpa文档+JPA文档.rar

    Spring框架的核心特性包括依赖注入(DI)和面向切面编程(AOP),并且它还提供了对数据库操作的支持,这主要通过Spring Data JPA和Java Persistence API(JPA)实现。 Spring注解是Spring框架中的一大特色,它极大...

    Spring MVC+Spring+Spring data JPA

    Spring MVC 是一个用于构建 Web 应用的模型-视图-控制器(MVC)框架,Spring 提供了依赖注入、AOP(面向切面编程)等核心功能,而 Spring Data JPA 则是简化数据库操作的利器,它封装了对 Java Persistence API(JPA...

    Struts2 Spring Jpa 配置测试

    Spring框架则是一个全面的后端解决方案,提供了依赖注入(DI)、面向切面编程(AOP)以及数据访问等功能;JPA(Java Persistence API)是Java EE规范,用于对象关系映射(ORM),简化数据库操作。 在"Struts2 ...

    spring data jpa + spring + json demo

    此外,通过集成Spring,可以利用其依赖注入(DI)和AOP(面向切面编程)等特性,使应用程序更加灵活和解耦。 JSON(JavaScript Object Notation)是用于交换数据的轻量级格式,常用于前后端通信。在这个项目中,...

    Spring + JPA + Hibernate配置

    Spring是一个全面的后端开发框架,它提供了依赖注入(DI)、面向切面编程(AOP)、事务管理等多种功能,使得应用的组件可以松耦合并易于测试。在与JPA和Hibernate的整合中,Spring通常作为容器来管理和协调这些ORM(对象...

    springdatajpa 包括jar包

    Spring框架是整个应用的基础,它提供了依赖注入(DI)和面向切面编程(AOP)等核心功能。在Spring Data JPA中,Spring负责管理Repository实例,通过@Autowired注解,我们可以自动将Repository注入到需要的地方,无需...

    Spring2.5整合JPA

    2. **AOP支持**:Spring的面向切面编程(AOP)可以用于事务、日志、缓存等跨切面的处理,与JPA的集成使得这些功能更加强大。 3. **灵活的数据访问**:Spring Data JPA的Repository接口提供了一种声明式的方式来定义...

    SpringData和Spring和JPA的整合

    Spring的核心是IoC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程),这些特性使得开发者可以更专注于业务逻辑,而不用过多关注基础设施代码。 **二、SpringData** Spring...

    Struts2整合Spring、JPA

    Spring作为一个全面的轻量级框架,提供了依赖注入(DI)和面向切面编程(AOP)等功能,用于管理应用的组件和事务;JPA(Java Persistence API)则是Java标准的持久化框架,简化了数据库操作。下面将详细解释这三个...

    各种数据源配置之Spring+JPA配置BoneCP数据源

    Spring是企业级Java应用程序的框架,提供依赖注入(DI)和面向切面编程(AOP)等功能。JPA则是Java标准,用于对象关系映射(ORM),允许开发者使用Java对象来操作数据库。Spring JPA通过提供Repository接口简化了...

    Spring Boot+Jpa多数据源配置Demo(支持不同数据库)

    这可以通过AOP(面向切面编程)或自定义注解来实现。例如,可以创建一个`@SwitchDataSource`注解,并在方法上使用,根据注解的参数来决定使用哪个数据源。 **5. 测试与验证** 确保所有配置正确后,编写单元测试或...

    2017 spring data jpa+spring4.2+springmvc+hibernate4.3 maven环境intellij idea增删改查实例

    Spring框架作为一个全面的轻量级应用框架,包含IoC(依赖注入)、AOP(面向切面编程)、MVC(模型-视图-控制器)等模块,是构建现代Java应用的基础。 **Spring MVC** Spring MVC是Spring框架的一部分,用于构建Web...

    Spring+SpringMVC+SpringDataJPA+Hibernate

    Spring还提供了AOP(面向切面编程)功能,可以方便地实现日志记录、事务管理等功能。此外,Spring框架包括了对Web开发的支持,如Spring MVC。 Spring MVC是Spring框架的一部分,专门用于构建Web应用程序。它遵循...

    Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA

    Spring是Java应用开发的核心框架,提供了一系列丰富的功能,如依赖注入(DI)、面向切面编程(AOP)、事务管理等。Spring框架允许开发者编写松耦合的代码,提高了可测试性和可维护性。Spring MVC是Spring框架的一...

    Spring集成JPA和MyBatis简单例子-20170622

    通过依赖注入(DI)和面向切面编程(AOP),Spring可以帮助开发者更好地组织代码并降低耦合度。此外,Spring还提供了大量的模块,如Spring MVC、Spring Data、Spring Security等,涵盖了Web开发、数据访问、安全等多...

    Spring整合JPA

    Spring框架是Java领域中极为重要的一个组件,它为开发者提供了丰富的功能,包括依赖注入、AOP(面向切面编程)、事务管理等。而JPA(Java Persistence API)则是Java世界中用于对象关系映射(ORM)的标准API,它允许...

    Spring +JPA+EclipseLink Maven 配置

    在Java开发中,Spring框架是应用最广泛的轻量级框架之一,它提供了强大的依赖注入、AOP(面向切面编程)以及丰富的数据访问接口。JPA(Java Persistence API)是Java平台上的一个标准,用于管理和持久化Java对象到...

    Spring和openJPA集成

    它支持依赖注入(DI),面向切面编程(AOP),以及一系列工具和服务,如事务管理、数据访问抽象等。在与 OpenJPA 集成时,Spring 可以作为容器管理OpenJPA的实体管理和数据访问对象(DAO)。 OpenJPA 是基于 JPA 规范的...

    spring+springmvc+spring data jpa+mysql

    1. **Spring框架**:这是一个全面的企业级应用开发框架,提供依赖注入(DI)和面向切面编程(AOP)等功能,简化了Java应用的开发和测试。Spring框架还提供了大量的模块,如Spring MVC用于Web开发,Spring Data用于...

Global site tag (gtag.js) - Google Analytics