为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Spring入门篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Spring入门篇

moocer JAVA开发工程师
难度中级
时长 7小时 0分
  • introduction简介
    查看全部
    0 采集 收起 来源:Introductions应用

    2016-03-13

  • advice:around advice举例
    查看全部
  • around advice
    查看全部
  • advice:after/finally 无论方法是否正常执行,会都执行after advice
    查看全部
  • advice:after throwing
    查看全部
  • advice:after returing
    查看全部
  • advice:before
    查看全部
  • Bean的作用域
    查看全部
  • 使用自定义注解向Advice传递参数: 1.首先自定义注解 @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) public @interface Param{ String value(); } 2.在符合切入点的方法中标注该注解,并赋值 @Component public class A{ @Param("参数1") public void print(){ System.out.println("admin"); } } 2.在通知中引入@annotation //定义切面 @Component @Aspect public class asp{ @Before("execution(* com.own.A.*(..)) && @annotation(arg)") public void before(Param arg){ System.out.println(arg.value()); } //或者 @Pointcut("execution(* com.own.A.*(..))") public void pointcut1(){} @Before("pointcut1() && @annotation(arg)") public void before(Param arg){ System.out.println(arg.value()); } //或者 @Pointcut("execution(* com.own.A.*(..)) && @annotation(arg)") public void pointcut3(Param arg){}; @Before("pointcut3(arg)") public void before(Param arg){ System.out.println(arg.value()); } //@annotation()要保证括号内的参数名与通知中的方法的参数名一至,类型是注解类型 通过注解的value()方法获取该注解的value属性的属性值 } 当调用print()方法的时候,在方法执行前调用前置通知,并输出在print()方法上标注了注解的value值 控制台显示: 参数1 admin
    查看全部
    0 采集 收起 来源:Advice扩展

    2018-03-22

  • 给advice传递参数 1.args() (即在通知中获取符合切入点的方法中的参数) 2.自定义注解 (即在通知中获取符合切入点的方法被注解标注的值) 使用args(): //定义目标对象 @Component public class A{ //符合切入点的方法 public void print(String name){ System.out.println(name); } } //定义切面 @Aspect @Component public class asp{ @Pointcut(execution(* com.own.A.*(..)) && args(arg)) public void pointcut1(String arg){} //使用args()的方式要保证args()括号内的参数名要与定义切入点的参数名一致. //@Before注解中引入切入点并配上参数(不需要类型). @Before("pointcut1(arg)") public void before(String arg){ System.out.println("before:"+arg); } //或者 @Before(execution(* com.own.A.*(..)) && args(arg)) public void before(String arg){ System.out.println("before:"+arg); } } <beans..> <aop:aspectj-autoproxy></aop:aspectj> </beans> 测试类中: A a=(A)context.getBean("a"); a.printl("param") 控制台显示: before:param param
    查看全部
    0 采集 收起 来源:Advice扩展

    2018-03-22

  • Spring AOP中支持AspectJ实现AOP的方式,即使用注解与切入点表达式的部分. Spring实现AOP是有两种配置文件:1、xml文件方式;2、annotation方式(使用AspectJ类库实现的) aspectJ类库,AspectJ是一个专门用来实现动态代理(AOP编程)的类库,AspectJ是面向切面编程的框架,Spring使用就是这个类库实现动态代理的. Spring中AOP的实现就是依赖于apsectJ框架的 (传统实现AOP的方式不依赖AspectJ) AOP、Spring AOP、AspectJ的关系 AOP是面向切面编程,AspectJ是一个完全实现AOP的框架.Spring中的AOP的实现也依赖于AspectJ框架,也有自己传统实现AOP的方式. Spring中使用注解部分实现AOP就是依赖于AspecJ的支持.定义切入点使用切入点表达式也是AspectJ的支持. 传统实现AOP的方式中也可以使用CGLIB的方式.
    查看全部
  • spring的作用
    查看全部
    0 采集 收起 来源:Spring概况

    2016-03-13

  • 组合pointcut
    查看全部
  • 切入点表达式指示符.
    查看全部
  • @Pointcut注解
    查看全部

举报

0/150
提交
取消
课程须知
Java的高级课程,适合对Java基础知识应用自如,并熟悉MVC架构的小伙伴们。如果想成为一名Java工程师,这门课程是一定要学哒。
老师告诉你能学到什么?
掌握依赖注入、IOC和AOP的概念,并能进行简单应用。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!