摘要:
第一步:在 spring 配置文件中开启 spring 对注解 AOP 的支持 <!-- 开启 spring 对注解 AOP 的支持 --> <aop:aspectj-autoproxy> <aop:aspectj-autoproxy /> 第二步:在配置文件中指定 spring 要扫描的包 <!- 阅读全文
摘要:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driv 阅读全文
摘要:
execution:匹配方法的执行(常用) execution(表达式) 表达式语法:execution([修饰符] 返回值类型 包名.类名.方法名(参数)) 写法说明: 全匹配方式: public void com.itheima.service.impl.AccountServiceImpl.s 阅读全文
摘要:
第一步:把通知类用 bean 标签配置起来 <bean id="txManager" class="com.atguigu.account.utils.TransactionManager"> <!-- 注入ConnectionUtils --> <property name="connection 阅读全文
摘要:
一、Joinpoint(连接点): 所谓连接点是指那些被拦截到的点。在 spring 中,这些所谓的点指就是方法,因为 spring 只支持方法类型的连接点。 二、Pointcut(切入点): 所谓切入点是指需要进行增强的连接点(Joinpoint) 三、Advice( 通知/ 增强:) 所谓通知是 阅读全文
摘要:
一、JDK代理 public class Client { public static void main(String[] args) { final Product product = new Product(); /** * 动态代理: * 特点:字节码随用随创建,随用随加载 * 作用: 不修 阅读全文
摘要:
作用: 就是把我们程序重复的代码抽取出来,在需要执行的时候,使用动态代理的技术,在不修改源码的 基础上,对我们的已有方法进行增强。 优势: 减少重复代码 提高开发效率 维护方便 AoP的实现方式:动态代理(Jdk代理、Cglib代理) 阅读全文
摘要:
一、导入jar包 二、使用@RunWith 注解替换原有运行器 [main()] /** * * @Company http://www.ithiema.com * @Version 1.0 */ @RunWith(SpringJUnit4ClassRunner.class) public clas 阅读全文
摘要:
一、@Configuration 二、@ComponentScan 三、@Bean 四、 五、@Import 阅读全文
摘要:
一、配置spring核心配置文件ApplicationContext.xml,添加扫描包 二、注解创建bean对象 三、注入方法 阅读全文
摘要:
一、构造函数注入 二、set方式注入 三、集合注入 阅读全文
摘要:
依赖注入: Dependency Injection。它是 spring 框架核心 ioc 的具体实现。 我们的程序在编写时,通过控制反转, 把对象的创建交给了 spring,但是代码中不可能出现没有依赖的情况。 ioc 解耦只是降低他们的依赖关系,但不会消除。例如:我们的业务层仍会调用持久层的方法 阅读全文
摘要:
一、使用无参构造方法创建 二、使用静态工厂创建 三、使用实例工厂创建 阅读全文