本篇文章小编给大家分享一下在Spring中使用动态代理示例代码,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
Spring动态代理
定义自定义切面 - diyNodePoint
package com.lxc.diy; import org.aspectj.lang.annotation.After; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; /** * @Aspect 标注这个了是一个切面 * @Before("切入点") ===* @After("切入点") === */ @Aspect public class diyNotePoint { @Before("execution(* com.lxc.service.UserServiceImp.*(..))") public void before() { System.out.println("前置切面"); } @After("execution(* com.lxc.service.UserServiceImp.*(..))") public void after() { System.out.println("后置切面"); } }
定义接口 - UserService
package com.lxc.service; public interface UserService { public void query(); public void delete(); public void edit(); public void add(); }
重写接口类 - UserServiceImp
package com.lxc.service; public class UserServiceImp implements UserService{ @Override public void query() { System.out.println("query"); } @Override public void delete() { System.out.println("delete"); } @Override public void edit() { System.out.println("edit"); } @Override public void add() { System.out.println("add"); } }
beans.xml中配置:
测试:
import com.lxc.service.UserService; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test { public static void main(String[] args) { ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); UserService userService = ctx.getBean("imp", UserService.class); userService.add(); } }
输出如下:
天才足球经理
天才足球经理是一款经典的足球模拟策略类手游。精致的人物建模和
魔法学园手游
魔法学园是一款二次元题材的少女养成手游,玩家在游戏中需要经营
樱花校园模拟器4399中文版
樱花校园模拟器4399中文版,十分奇趣好玩的3d校园冒险模拟
我的暑假秘密回忆繁星新春版
我的暑假秘密回忆繁星新春版是一款少女模拟养成类休闲游戏。这款
樱花校园模拟器国际版
樱花校园模拟器国际版,一个超级自由超级好玩的自由恋爱模拟的游