注解实现Springaop
1. 首先需要在配置文件中导入
pom.xml
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>com.springsource.org.aspectj.weaver</artifactId>
<version>1.6.8.RELEASE</version>
</dependency>
2. 然后导入aop标签
beans.xml
xmlns:aop="http://www.springframework.org/schema/aop"
3. 导入在beans.xml
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
第二步:填写配置文件beans.xml
1. 将被代理对象类加入(注:不是接口)
<bean id="us" class="com.xj.aop04.UserService" />
2. 将额外添加的类加入
<bean id="ma" class="com.xj.aop04.MyAspect" />
3. 使用aop标签
<aop:config proxy-target-class="true">
<!--
定义一个aop的切点
第一个 * 表示该包com.qfedu.aop04下所有的任意类
第二个 * 表示类,指定一个特定的类
第三个 * 表示方法,指定类的特定方法
第四个(..) 表示参数,方法的参数指定
-->
<aop:pointcut id="pt" expression="execution(* com.qfedu.aop04.*.*(..))" />
<!--
通知,将MyAspect与切点关联起来
-->
<aop:advisor advice-ref="ma" pointcut-ref="pt" />
</aop:config>
五种集合的注入(array list set map property)
1. array
<property name="arrays">
<array>
<value>java</value>
<value>java</value><!--允许重复-->
<value>html5</value>
<value>python</value>
<value>testing</value>
</array>
</property>
2. list
<property name="list">
<list>
<value>zhouxingxing</value>
<value>zhouxingxing</value><!--允许重复-->
<value>9527</value>
<ref bean="obj" />
<ref bean="stu" />
</list>
</property>
3. set
<property name="set">
<set>
<value>suwukong</value>
<value>suwukong</value> <!--该值不会被加入,已经存在-->
<value>zhubajie</value>
<value>tangtang</value>
<value>shaheshang</value>
</set>
</property>
4. map
<property name="map">
<map>
<entry key="jack" value="杰克"/> <!--添加方法返回为null-->
<entry key="jack" value="杰克2"/> <!--添加方法返回为杰克-->
<entry key="rose" value="肉丝"/> <!--添加方法返回为null-->
<entry key="rose" value="null"/> <!--添加方法返回为肉丝,map里允许空value-->
<entry key="null" value="肉丝"/> <!--map允许空key-->
<entry key="null" value="null"/> <!--map里允许key和value同时为null,该方法返回肉丝-->
</map>
</property>
5. property
<property name="prop">
<props>
<prop key="url">jdbc:mysql://localhost:3306/hello</prop>
<prop key="driver">com.mysql.jdbc.Driver</prop>
<prop key="username">root</prop>
<prop key="password">123456</prop>
</props>
</property>