Spring
CodeWhisperer001
能用一行代码解决的问题,绝不写两行(即使阅读难度提升十倍)。
展开
-
21_Spring_日志框架和测试支持
1)spring移除了 LOG4jConfigListener,官方建议使用log4j2。spring5框架自带了通用的日志封装,也可以整合自己的日志。在resources目录下准备log4j2.xml的配置文件。2)spring5整合log4j2。spring5关于测试工具的支持。导入log4j2依赖。原创 2023-03-06 13:26:21 · 65 阅读 · 0 评论 -
20_Spring_零XML事务控制
【代码】20_Spring_零XML事务控制。原创 2023-03-06 13:20:37 · 63 阅读 · 0 评论 -
19_Spring_事务管理XML配置方式
applicationContext中,通过AOP实现事务的控制。原创 2023-03-06 12:36:35 · 66 阅读 · 0 评论 -
18_Spring_事务管理注解方式
保证一个事务修改的数据提交后才能被另外一个事务读取,另外一个事务不能读取该事务未提交的数据。这种事务隔离级别可以避免脏读出现,但是可能会出现不可重复读和幻像读。它除了保证一个事务不能读取另一个事务未提交的数据外,还保证了不可重复读。这是事务最低的隔离级别,它允许另外一个事务可以看到这个事务未提交的数据。无论add是否有事务,都建立一个新的事务,所有的方法都加入到新的事务中,add原来的事务就不用了。如果add方法没有事务,那么就新建一个事务,将addDept和addEmp加入到这个新的事务中。原创 2023-03-05 21:08:45 · 103 阅读 · 0 评论 -
21_Spring_日志框架和测试支持
1)spring移除了 LOG4jConfigListener,官方建议使用log4j2。spring5框架自带了通用的日志封装,也可以整合自己的日志。在resources目录下准备log4j2.xml的配置文件。2)spring5整合log4j2。spring5关于测试工具的支持。导入log4j2依赖。原创 2023-03-04 13:19:25 · 71 阅读 · 0 评论 -
20_Spring_零XML事务控制
【代码】20_Spring_零XML事务控制。原创 2023-03-04 10:15:34 · 63 阅读 · 0 评论 -
17_Spring_事务环境搭建
3 准备DAO层,创建一个根据id修改money的方法。4 准备Service,创建一个转账的业务方法。通过张三给李四转账案例演示事务的控制。5 测试代码,测试转账。1 数据库中准备表格。2 项目中准备实体类。原创 2023-03-04 10:14:16 · 73 阅读 · 0 评论 -
16_Spring_事务回顾
例2(同样的条件, 第1次和第2次读出来的记录数不一样 ):假某工资单表中工资大于3000的有4人,事务1读取了所有工资大于3000的人,共查到4条记录,这时事务2又插入了一条工资大于3000的记录,事务1再次读取时查到的记录就变为了5条,这样就导致了幻读。通常,某个事务中的操作都具有共同的目标,并且是相互依赖的。事务(Transaction)指的是一个操作序列,该操作序列中的多个操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位,由DBMS中的事务管理子系统负责事务的处理。原创 2023-03-04 09:28:20 · 63 阅读 · 0 评论 -
15_Spring_JDBCTemplate批操作
一次连接,操作表格里的多条数据,就是批量操作。原创 2023-03-04 09:23:09 · 162 阅读 · 0 评论 -
12_Spring_AOP注解方式实现_掌握
execution(* com.msb.dao.*.add*(..)) // 指定切点为dao包下所有的类中的add开头的方法。execution(* com.msb.dao.*.*(..)) //指定切点为dao包下所有的类中的所有的方法。execution(* com.msb.dao.*.add(..)) // 指定切点为dao包下所有的类中的add的方法。数字越小,优先级越高。原创 2023-03-04 00:55:53 · 88 阅读 · 0 评论 -
13_Spring_AOPXML方式实现_了解
1、创建两个类,增强类和被增强类,创建方法。2、在spring配置文件中创建两个类对象。3、在spring配置文件中配置切入点。原创 2023-03-04 00:47:10 · 66 阅读 · 0 评论 -
11_Spring_AOP概念和原理
Advice 定义了在 Pointcut 里面定义的程序点具体要做的操作,它通过 before、after 和 around 来区别是在每个 joint point 之前、之后还是代替执行的代码。表示在程序中明确定义的点,典型的包括方法调用,对类成员的访问以及异常处理程序块的执行等等,它自身还可以嵌套其它 joint point。AOP实现的原理就是动态代理,在有接口的情况下,使用JDK动态代理,在没有接口的情况下使用cglib动态代理。4 目标对象 Target:被增强功能的对象(被代理的对象)原创 2023-03-03 23:54:08 · 73 阅读 · 0 评论 -
5_Spring_Bean的生命周期
2、ApplicationContext会自动检测在配置文件中实现了BeanPostProcessor接口的所有bean,并把它们注册为后置处理器,然后在容器创建bean的适当时候调用它,因此部署一个后置处理器同部署其他的bean并没有什么区别。3 初始化bean 调用bean的初始化方法,需要配置指定调用的方法。4 初始化bean 调用bean的初始化方法,需要配置指定调用的方法。原创 2023-03-03 14:54:16 · 68 阅读 · 0 评论 -
7_Spring_使用外部属性配置文件
spring容器可以读取.properties属性配置文件,可以将文件中的信息注入给bean。applicationContext中添加context名称空间 并读取属性配置文件。resources目录下准备一个jdbc.properties属性配置文件。1 导入Druid依赖和mysql-connector依赖。配置druid数据源将属性配置文件中的信息注入到连接池中。例如,引入Druid数据源,配置连接池信息。3 DEBUG测试代码。2 准备属性配置文件。原创 2023-03-03 14:48:52 · 117 阅读 · 0 评论 -
18_Spring_事务管理注解方式
保证一个事务修改的数据提交后才能被另外一个事务读取,另外一个事务不能读取该事务未提交的数据。这种事务隔离级别可以避免脏读出现,但是可能会出现不可重复读和幻像读。它除了保证一个事务不能读取另一个事务未提交的数据外,还保证了不可重复读。这是事务最低的隔离级别,它允许另外一个事务可以看到这个事务未提交的数据。无论add是否有事务,都建立一个新的事务,所有的方法都加入到新的事务中,add原来的事务就不用了。如果add方法没有事务,那么就新建一个事务,将addDept和addEmp加入到这个新的事务中。原创 2023-03-03 14:42:49 · 90 阅读 · 0 评论 -
9_Spring_JDK动态代理
静态代理中代理类与被代理类都需要实现同一个接口,这就说明我们的一个静态代理类只能代理一个类,并且还要事先知道我们要代理哪个类才能写代理类,如果我们有其他类还想使用代理那就必须再写一个代理类。动态代理可以针对于一些不特定的类或者一些不特定的方法进行代理,我们可以在程序运行时动态的变化代理的规则,代理类在程序运行时才创建的代理模式成为动态代理。2JDK Proxy 动态代理面向接口的动态代理 一定要有接口和实现类的存在 代理对象增强的是实现类 在实现接口的方法重写的方法。房产中介代替业主卖房。原创 2023-03-03 14:37:40 · 98 阅读 · 0 评论 -
6_Spring_Bean的自动装配
我们也可以通过自动转配,完成属性的自动注入,就是自动装配,可以简化DI的配置。通过property标签可以手动指定给属性进行注入。原创 2023-03-02 21:39:17 · 69 阅读 · 0 评论 -
10_Spring_CGLIB动态代理
3只能读取接口中方法的上注解。1必须有接口和实现类。proxy 动态代理。2增强接口中定义的方法。cglib动态代理模式。原创 2023-03-02 21:34:22 · 100 阅读 · 0 评论 -
11_Spring_AOP概念和原理
Advice 定义了在 Pointcut 里面定义的程序点具体要做的操作,它通过 before、after 和 around 来区别是在每个 joint point 之前、之后还是代替执行的代码。表示在程序中明确定义的点,典型的包括方法调用,对类成员的访问以及异常处理程序块的执行等等,它自身还可以嵌套其它 joint point。AOP实现的原理就是动态代理,在有接口的情况下,使用JDK动态代理,在没有接口的情况下使用cglib动态代理。4 目标对象 Target:被增强功能的对象(被代理的对象)原创 2023-03-02 21:33:04 · 70 阅读 · 0 评论 -
Spring 为解决应用开发的复杂性而生
是一个开源框架,它由Rod Johnson创建 ,.它是一个容器框架,用来装javabean,这种中间层框架可以起一个连接作用,比如说把Struts和hibernate结合在一起运用,就是早期的SSH,如果把SpringMVC和MyBatis结合到一起,就是目前非常流行的SSM。简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,我们目前所用的几乎所有的框架都可以在spring上进行整合.从简单性,可测性和松耦合性角度而言,绝大部分JAVA应用都可以从Spring受益.原创 2023-03-02 21:26:19 · 184 阅读 · 0 评论 -
3_Spring_IOC原理分析_重要
BeanFactory 接口: IOC容器基本功能接口,是spring内部使用的接口,我们在处理业务时一般不直接使用该接口。ApplicationContext 接口: BeanFactory的子接口,提供更多更强大的功能,研发人员一般使用的接口。将对象放到一个map集合中。将上面的信息读取进入程序 对象的ID ,一个是对象的类的全路径名。3工厂模式返回Bean对象 getBean方法。2 反射技术实例化对象,放到容器中。通过字节码实例化对象。1 XML解析技术读取配置文件。原创 2023-03-02 21:23:03 · 60 阅读 · 0 评论 -
10_Spring_CGLIB动态代理
3只能读取接口中方法的上注解。1必须有接口和实现类。proxy 动态代理。2增强接口中定义的方法。cglib动态代理模式。原创 2022-12-24 18:29:06 · 87 阅读 · 0 评论 -
14_Spring_JDBCTemplate的使用
JdbcTemplate是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等等。3 准备applicationContext.xml。按如下项目结构准备 maven jar项目即可。2 准备JDBC.properties。4 准备service层接口和实现类。5 准备dao层接口和实现类。原创 2022-12-24 18:25:54 · 124 阅读 · 0 评论 -
13_Spring_AOPXML方式实现_了解
1、创建两个类,增强类和被增强类,创建方法。2、在spring配置文件中创建两个类对象。3、在spring配置文件中配置切入点。原创 2022-12-24 18:22:30 · 75 阅读 · 0 评论 -
15_Spring_JDBCTemplate批操作
一次连接,操作表格里的多条数据,就是批量操作。原创 2022-12-24 18:21:00 · 85 阅读 · 0 评论 -
16_Spring_事务回顾
例2(同样的条件, 第1次和第2次读出来的记录数不一样 ):假某工资单表中工资大于3000的有4人,事务1读取了所有工资大于3000的人,共查到4条记录,这时事务2又插入了一条工资大于3000的记录,事务1再次读取时查到的记录就变为了5条,这样就导致了幻读。通常,某个事务中的操作都具有共同的目标,并且是相互依赖的。事务(Transaction)指的是一个操作序列,该操作序列中的多个操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位,由DBMS中的事务管理子系统负责事务的处理。原创 2022-12-24 18:20:27 · 76 阅读 · 0 评论 -
17_Spring_事务环境搭建
3 准备DAO层,创建一个根据id修改money的方法。4 准备Service,创建一个转账的业务方法。通过张三给李四转账案例演示事务的控制。5 测试代码,测试转账。1 数据库中准备表格。2 项目中准备实体类。原创 2022-12-24 18:15:50 · 89 阅读 · 0 评论 -
18_Spring_事务管理注解方式
保证一个事务修改的数据提交后才能被另外一个事务读取,另外一个事务不能读取该事务未提交的数据。这种事务隔离级别可以避免脏读出现,但是可能会出现不可重复读和幻像读。它除了保证一个事务不能读取另一个事务未提交的数据外,还保证了不可重复读。这是事务最低的隔离级别,它允许另外一个事务可以看到这个事务未提交的数据。无论add是否有事务,都建立一个新的事务,所有的方法都加入到新的事务中,add原来的事务就不用了。如果add方法没有事务,那么就新建一个事务,将addDept和addEmp加入到这个新的事务中。原创 2022-12-24 18:13:47 · 80 阅读 · 0 评论 -
20_Spring_零XML事务控制
【代码】20_Spring_零XML事务控制。原创 2022-12-24 18:11:12 · 74 阅读 · 0 评论 -
19_Spring_事务管理XML配置方式
applicationContext中,通过AOP实现事务的控制。原创 2022-12-24 18:10:36 · 66 阅读 · 0 评论 -
21_Spring_日志框架和测试支持
1)spring移除了 LOG4jConfigListener,官方建议使用log4j2。spring5框架自带了通用的日志封装,也可以整合自己的日志。在resources目录下准备log4j2.xml的配置文件。2)spring5整合log4j2。spring5关于测试工具的支持。导入log4j2依赖。原创 2022-12-24 18:08:58 · 111 阅读 · 0 评论 -
7_Spring_使用外部属性配置文件
spring容器可以读取.properties属性配置文件,可以将文件中的信息注入给bean。applicationContext中添加context名称空间 并读取属性配置文件。resources目录下准备一个jdbc.properties属性配置文件。1 导入Druid依赖和mysql-connector依赖。配置druid数据源将属性配置文件中的信息注入到连接池中。例如,引入Druid数据源,配置连接池信息。3 DEBUG测试代码。2 准备属性配置文件。原创 2022-12-23 15:48:25 · 83 阅读 · 0 评论 -
6_Spring_Bean的自动装配
我们也可以通过自动转配,完成属性的自动注入,就是自动装配,可以简化DI的配置。通过property标签可以手动指定给属性进行注入。原创 2022-12-23 15:46:05 · 76 阅读 · 0 评论 -
6_Spring_Bean的自动装配
我们也可以通过自动转配,完成属性的自动注入,就是自动装配,可以简化DI的配置。通过property标签可以手动指定给属性进行注入。原创 2022-12-23 15:44:56 · 66 阅读 · 0 评论 -
5_Spring_Bean的生命周期
2、ApplicationContext会自动检测在配置文件中实现了BeanPostProcessor接口的所有bean,并把它们注册为后置处理器,然后在容器创建bean的适当时候调用它,因此部署一个后置处理器同部署其他的bean并没有什么区别。3 初始化bean 调用bean的初始化方法,需要配置指定调用的方法。4 初始化bean 调用bean的初始化方法,需要配置指定调用的方法。原创 2022-12-23 15:36:59 · 92 阅读 · 0 评论 -
【无标题】
首先学习Spring的应用,这是核心,一些都是围绕项目研发为根本目标. 学习Spring源码对于我们虽有益处但是量力而行. 就业为目标,学习源码主要以通过面试获取高新为目标.大家再准备面试之前刷一刷我们Spring的源码课程即可.目前先会用,后面再考虑源码,不要急躁.不必立刻学习源码,会造成理解困难,影响学习进度和学习效率。7 规范的源码学习样本 spring的源码设计巧妙,结构清晰,大量使用了设计模式,是java代码规范编写的典范,也是高级程序员面试中经常会问到的源码。...原创 2022-08-03 13:22:29 · 89 阅读 · 0 评论