南京博学建设集团网站,网站建设公司前台,微信短网址生成,天津的公司能在北京做网站备案吗Spring的AOP理解#xff1a; OOP面向对象#xff0c;允许开发者定义纵向的关系#xff0c;但并不适用于定义横向的关系#xff0c;会导致大量代码的重复#xff0c;而不利于各个模块的重用。 AOP#xff0c;一般称为面向切面#xff0c;作为面向对象的一种补充#xff…Spring的AOP理解 OOP面向对象允许开发者定义纵向的关系但并不适用于定义横向的关系会导致大量代码的重复而不利于各个模块的重用。 AOP一般称为面向切面作为面向对象的一种补充用于将那些与业务无关但却对多个对象产生影响的公共行为和逻辑抽取并封装为一个可重用的模块这个模块被命名为“切面”Aspect减少系统中的重复代码降低了模块间的耦合度提高系统的可维护性。可用于权限认证、日志、事务处理。 AOP实现的关键在于 代理模式AOP代理主要分为静态代理和动态代理。静态代理的代表为AspectJ动态代理则以Spring AOP为代表。 Advice的类型 1前置通知Before Advice在连接点Join point之前执行的通知。 2后置通知After Advice当连接点退出的时候执行的通知不论是正常返回还是异常退出。 3环绕通知Around Advice包围一个连接点的通知这是最强大的一种通知类型。 环绕通知可以在方法调用前后完成自定义的行为。它也可以选择是否继续执行连接点或直接返回它们自己的返回值或抛出异常来结束执行。 4返回后通知AfterReturning Advice在连接点正常完成后执行的通知如果连接点抛出异常则不执行 5抛出异常后通知AfterThrowing advice在方法抛出异常退出时执行的通知