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

Spring入门篇

moocer JAVA开发工程师
难度中级
时长 7小时 0分
  • spring context:component-scan
    查看全部
  • spring context:annotation-config
    查看全部
  • Spring 注解
    查看全部
  • 把对象类 切面类(与通过配置aop:config来指定普通类成为切面类不同,使用ProxyFactoryBean的切面类都需要继承AOP API并重写方法来实现传递通知)都作为 成员属性放在一个ProxyFactoryBear类中 通过在ProxyFactoryBear类中的方法,指定对象类的切入点并配置切面(不再是通过配置文件进行切面配置,而是在IOC容器中配置)。并且最后返回一个Object类(可以理解为对象类对象通过一系列切面类方法加工、植入通知后的结果对象) 1 核心:代理工厂(ProxyFactoryBean) *必备属性:代理目标类(target,可以使用引用bean或匿名bean,推荐后者)、通知(advisor或advice) *可选属性:代理接口(proxyInterfaces,使用JDK动态代理)、代理类属性(proxyTargetClass的值为true时,则使用cglib代理) 2 切入点常用bean:NameMatchMethodPointcut *根据名称自动匹配方法,可以使用通配符的形式进行匹配,匹配结果放在数组mappedNames中 *mappedNames节点可以使用list子节点进行设置匹配项(可以使用通配符) 3 通知常用bean:DefaultPointcutAdvisor *必备属性:advice和pointcut *可以使用构造注入或设置注入的形式注入两个属性
    查看全部
  • 带参数的通知注解 @Before("pointcut() && args(arg)") public void beforeWithParam(String arg) { System.out.println("Before..." + arg); }
    查看全部
    0 采集 收起 来源:Advice扩展

    2018-03-22

  • 使用around注解,实现环绕通知 @Around("pointcut()") public Object around(ProceedingJoinPoint pjp) throws Throwable { System.out.println("Around before..."); Object obj = pjp.proceed(); System.out.println("Around after..."); return obj; }
    查看全部
  • 利用注解的方式实现切面(之前是使用xml配置的方式) 在xml文件中配置 <aop:aspectj-autoproxy/> 在切面类的文件中,Component表示可以被识别为一个bean,Aspect表示是一个切面的类,pointcut的方法在注解上表明了切入点的类,before,afterReturning,afterThrowing,after与之前相似,其中的参数表示切入的方法返回值或者抛出的错误信息 @Component @org.aspectj.lang.annotation.Aspect public class Aspect { @Pointcut("execution(* com.aspectj.Biz.*(..))") public void pointcut() { } // @Pointcut("within(* com.aspect.*)") // public void bizPointcut() { // } @Before("pointcut()") public void before() { System.out.println("Before..."); } @AfterReturning(pointcut = "pointcut()", returning = "returnValue") public void afterReturning(Object returnValue) { System.out.println("AfterReturning..." + returnValue); } @AfterThrowing(pointcut = "pointcut()", throwing = "e") public void afterThrow(RuntimeException e) { System.out.println("AfterThrowing..." + e.getMessage()); } @After("pointcut()") public void after() { System.out.println("After..."); } }
    查看全部
  • around表示在一个方法执行前或者后执行 <aop:around method="around" pointcut-ref="pointcut"/> 需要在around中加上ProceedingJoinPoint的参数,proceed是执行业务方法,表示在这个方法前后执行输入输出 public Object around(ProceedingJoinPoint pjp) throws Throwable { System.out.println("Around start..."); Object obj = pjp.proceed(); System.out.println("Around stop..."); return obj; } 带参数的方法实现around,在配置中使用直接配置切入点,需要配置对应方法的参数类型,和形参的名称 <aop:around method="around" pointcut="execution(* com.aspect.AspectBiz.init(String, int)) and args(name, time)" /> </aop:aspect> 在around方法中,可以通过这两个参数,对其进行操作 public Object around(ProceedingJoinPoint pjp, String name, int time) throws Throwable { System.out.println(name + " " + time); System.out.println("Around start..."); Object obj = pjp.proceed(); System.out.println("Around stop..."); return obj; }
    查看全部
  • 切入点的配置pointcut <aop:config> <aop:aspect id="aspectAOP" ref="aspect"> <aop:pointcut expression="execution(* com.aspect.AspectBiz.*(..))" id="pointcut"></aop:pointcut> </aop:aspect> </aop:config>
    查看全部
  • 声明aspect <bean id="aspect" class="com.aspect.Aspect"></bean> <bean id="aspectBiz" class="com.aspect.AspectBiz"></bean> <aop:config> <aop:aspect id="aspectAOP" ref="aspect"> </aop:aspect> </aop:config>
    查看全部
    0 采集 收起 来源:配置切面aspect

    2018-03-22

  • Advice类型
    查看全部
  • aop:面向切面编程,通过预编译方式和运行时动态代理实现程序功能的统一维护的一种技术,功能(日志记录,性能统计,安全控制,事务处理,异常处理) 切面相关概念 切面:Aspect 一个关注点的模块化,这个关注点可能会横切多个对象 连接点:程序执行过程中的某个特定的点 通知:在切面的某个特定的连接点上执行的动作 切入点:匹配连接点的断言,在AOP中通知和一个切入点表达式关联 引入:在不修改类代码的前提下,为类添加新的方法和属性 目标对象:被一个或者多个切面锁通知的对象 AOP代理:AOP框架创建的对象,用来实现切面契约 织入:把切面连接到其他的应用程序类型或者对象上,病创建一个被通知的对象,分为:编译时织入,类加载时织入,执行时织入
    查看全部
  • 构造注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-10-04

  • Spring注入 - Spring注入是指在启动Spring容器加载bean配置的时候,完成对变量的赋值行为 - 常用的两种注入方式 - 设值注入 - 构造注入 设值注入,是通过在xml文件里里调用setter方法来为成员变量赋值, 关于set方式注入: <bean id="" class="...Impl"> <property name="" ref=""></property> </bean> spring容器加载bean的时候利用对象的set方法将值赋给bean,set方法必须有。 bean->在xxx.xml文件中配置,<property name="">name的值需要和对象的成员变量名字相同。 构造注入,是通过在xml文件里调用构造方法为成员变量赋值
    查看全部
    0 采集 收起 来源:Spring注入方式

    2018-03-22

  • OC控制反转 哪些方面的控制被反转了呢: 获得依赖对象的过程被反转了 控制被反转之后,获得依赖对象的过程由自身管理变为了由IOC容器主动注入 -->所以控制反转又叫做“依赖注入” 实现IOC的方法:注入 所谓依赖注入,就是由IOC容器在运行期间,动态的将某种依赖关系注入到对象之中 房屋中介 IOC 找中介 -------> 找IOC容器 中介介绍房子 -------> 容器返回对象 租房、入住 -------> 使用对象 Bean容器初始化 基础:两个包 - org.springframework.beans - org.springframework.context - BeanFacoty提供配置结构和基本功能,加载并初始化Bean - ApplicationContext保存了Bean对象并在Spring中被广泛使用 方式,ApplicationContext - 本地文件 - Classpath - Web应用中依赖Servlet或Listener
    查看全部
    0 采集 收起 来源:IOC及Bean容器

    2018-03-22

举报

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

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