SpringAOP
通知: advice 在执行目标方法的过程中的那个阶段嵌入我们的外部程序
前置: 在执行目标方法之前
后置: 执行目标方法之后
环绕: 在执行目标方法过程之中
异常: 目标方法执行过程中出现异常的处理
最终: 方法执行结束之后
目标对象: 被代理的对象
AOP代理: JDK动态代理,cglib动态代理(优先使用jdk动态的模式)
织入: 将外部的插件的功能嵌入到我们主要的业务逻辑过程 称为织入
引入: 我们的外部插件,外部的功能代码
切入点: 我们选取当前执行的程序中的那个具体的标记
(* com.ujiuye.service..(…)) service包下所有的类的所有的方法
切面: 关注点的模块话(点 线 面)多个切点组成的新的代码
连接点: 当前正在调用的目标方法就是连接点
代码展示:
<?xml version="1.0" encoding="UTF-8"?>
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver"></property>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/shoop"></property>
<property name="user" value="root"></property>
<property name="password" value="root"></property>
</bean>
<bean id="template" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="dao" class="com.ujiuye.dao.CategoryDaoImpl">
<property name="template" ref="template"></property>
</bean>
<bean id="service" class="com.ujiuye.service.CategoryServiceImpl">
<property name="dao" ref="dao"></property>
</bean>