场景:自定义注解,AOP拦截,处理前置业务。然后从spring中getBean,然后将此bean存入数据库,将报noMapping entity错误。
原因:AOP拦截,因为bean不是用的接口,AOP将动态代理此bean。如果从spring中getBean,那么spring将扫描此bean,发现注解,然后代理此对象。因为spring都是新产生的对象,采用prototype的形式。那么当前对象将转变成代理对象,hibernate的映射严格对照xml,将不认识此代理对象,报错。
解决:AOP拦截接口;在方法中new一个新对象,将代理对象的值拷贝到新对象中,再持久化;避免将该对象持久化。
相关推荐
死磕Spring之AOP篇 - Spring AOP两种代理对象的拦截处理(csdn)————程序
SpringMVC+springAOP+spring security+Hibernate整合实例代码,包含框架jar包
spring之AOP(动态代理),包括jdk动态代理和CGLib动态代理
主要对Spring AOP的相关概念和简单的静态代理、动态代理以及常见的几种AOP配置方式做总结学习。主要包括:1. AOP的常见概念 2. 静态代理 3. jdk动态代理 4. Aspectj and Aspectjweaver 5. **aop-config** 6. CGLIB ...
AOP的意思就是面向切面编程。本文主要是通过梳理JDK中自带的反射机制,实现 AOP动态代理模式,这也是Spring AOP 的实现原理
springAOP配置实现动态代理,有利于熟悉动态代理原理,深入了解spring。
介绍了springAop默认代理方式
spring aop spring aop spring aop spring aop spring aop spring aop spring aop spring aop spring aop
spring aop jar 包
Spring AOP 使用的动态代理主要有两种方式:JDK 动态代理和 CGLIB 代理。 JDK 动态代理:用于代理实现了接口的类。Spring 会使用 java.lang.reflect.Proxy 类来创建代理对象。 CGLIB 代理:用于代理没有实现接口的...
描述一下Spring AOP? 在Spring AOP中关注点(concern)和横切关注点(cross-cutting ...Spring AOP 代理是什么? 引介(Introduction)是什么? 连接点(Joint Point)和切入点(Point Cut)是什么? 织入(Weaving)是什么?
spring aop的demo spring aop的demo
基于注解实现SpringAop基于注解实现SpringAop基于注解实现SpringAop
我们知道,Spring支持多种AOP方式,Spring自己的基于代理的AOP和AspectJ的基于编织(weaving)的AOP。如果一个类实现了一个或多个接口,那么Spring就会使用默认的JDK动态代理,如果没有实现任何接口,就会使用cglib...
Spring AOP的实现机制中文版,动态代理及原理,自定义类加载器
Spring aop Spring aop
3、对spring aop认识模糊的,不清楚如何实现Java 自定义注解的 4、想看spring aop 注解实现记录系统日志并入库等 二、能学到什么 1、收获可用源码 2、能够清楚的知道如何用spring aop实现自定义注解以及注解的逻辑...
springAOP详解
代理模式与动态代理--Spring AOP原理.doc
springaop依赖的jar包,spring版本2.5.6,如果需要,可以下载使用,欢迎各位评论指出不足