下面是Spring5的配置文件,该文件配置了Spring5 AOP中的通知,请分析代码并回答后面的问题。(10分) applicationContext.xml: ① <?xml version="1.0" encoding="UTF-8"?> ② <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "https://www.springframework.org/dtd/spring-beans-2.0.dtd" [ <!ENTITY contextInclude SYSTEM "org/springframework/web/context/WEB-INF/contextInclude.xml">]> ③ <beans> ④ <bean id="BeforeAdvice" ⑤ class="adviceexample.GettingBeforeAdvice"></bean> ⑥ <bean id="AfterAdvice" class="adviceexample.GettingAfterAdvice"></bean> ⑦ <bean id="proxy" ⑧ class="org.springframework.aop.framework.ProxyFactoryBean"> ⑨ <property name="proxyInterfaces" ⑩ value="adviceexample.Reception"></property> ⑪ <property name="interceptorNames"> ⑫ <list> ⑬ <value>BeforeAdvice</value> ⑭ <value>AfterAdvice</value> ⑮ </list> ⑯ </property> ⑰ <property name="target" ref="target"></property> ⑱ </bean> ⑲ <bean id="target" class="adviceexample.ConcreteReception"></bean> ⑳ </beans> (1)上面文件配置了的两种通知是用来做什么的(4分) (2)上面文件配置了代理工厂对象proxy,该对象有三个属性,依次是代理接口,通知和目标对象,其中,代理接口是什么?(2分) (3)分析上面代码说明AOP主要包含哪些内容?(4分)
时间: 2023-06-15 21:07:34 浏览: 253
(1)上面文件配置了的两种通知分别是BeforeAdvice和AfterAdvice,分别用来在目标方法执行前和执行后进行一些操作,例如记录日志、权限控制等。(4分)
(2)代理接口是Reception,使用ProxyFactoryBean创建的代理对象会实现该接口。(2分)
(3)AOP主要包含以下内容:目标对象、切面、通知、切点、代理对象等。其中,切面是由通知和切点组成的,通知包括BeforeAdvice、AfterAdvice等不同类型,切点是用来匹配目标方法的规则。在Spring AOP中,代理对象是通过ProxyFactoryBean创建的,而目标对象则是被AOP增强的原始对象。AOP的核心是在目标方法执行前、后或异常抛出时插入相应的通知,从而实现特定的功能增强。 (4分)
阅读全文