Spring6学习之路
文章平均质量分 93
Spring6从入门到精通
Julissa.
这个作者很懒,什么都没留下…
展开
-
Spring6 - (18) Spring6集成MyBatis3.5
SqlSessionFactoryBean配置(注入数据源、注入mybatis核心配置文件路径、指定别名包)如果接口叫做UserMapper,配置文件必须是UserMapper.xml。放在类的根路径下,只开启日志,其他配置到spring.xml中。引入外部的属性文件(jdbc.properties配置文件)第七步:编写service接口和service接口实现类。第三步:基于三层架构实现,所以提前创建好所有的包。第十一步:编写测试程序,并添加事务,进行测试。第十步:编写spring.xml配置文件。原创 2023-03-27 14:11:16 · 229 阅读 · 0 评论 -
Spring6 - (17) Spring6整合Junit5
第一步:引入JUnit5的依赖,Spring对JUnit支持的依赖还是:spring-test。第三步:配置spring.xml。第三步:配置spring.xml。第一步:准备工作:引入相关依赖。第二步:定义一个bean。第二步:定义一个bean。第四步:编写测试程序。第五步:运行测试程序。第四步:编写测试程序。第五步:运行测试程序。原创 2023-03-27 14:06:05 · 291 阅读 · 0 评论 -
Spring6 - (16) Spring 对事务的支持
什么是事务:事务:Transaction(tx)在一个业务流程当中,通常需要多条DML(insert delete update)语句共同联合才能完成,这多条DML语句必须同时成功,或者同时失败,这样才能保证数据的安全。多条DML要么同时成功,要么同时失败,这叫做事务。事务的四个处理过程:第一步:开启事务 (start transaction)第二步:执行核心业务代码第三步:提交事务(如果核心业务处理过程中没有出现异常)(commit transaction)原创 2023-03-27 13:59:03 · 214 阅读 · 0 评论 -
Spring6 - (15) 面向切面编程AOP
日志事务管理安全等。交叉业务这些交叉业务几乎是通用的,不管你是做银行账户转账,还是删除用户数据。日志、事务管理、安全,这些都是需要做的。第一:交叉业务代码在多个业务流程中反复出现,显然这个交叉业务代码没有得到复用。并且修改这些交叉业务代码的话,需要修改多处。第二:程序员无法专注核心业务代码的编写,在编写核心业务代码的同时还需要处理这些交叉业务。使用AOP可以很轻松的解决以上问题。原创 2023-03-27 13:44:29 · 181 阅读 · 0 评论 -
Spring6 - (14) GoF之代理模式
大家思考一下:如果系统中业务接口很多,一个接口对应一个代理类,显然也是不合理的,会导致类爆炸。代理类不需要我们写了。我们将来肯定是要调用“目标方法”的,但要调用目标方法的话,需要“目标对象”的存在,“目标对象”从哪儿来呢?注意:当你调用代理对象的代理方法的时候,注册在InvocationHandler接口中的invoke()方法会被调用,注册在InvocationHandler接口中的invoke()方法都会被调用。以上就是代理模式中的静态代理,其中OrderService接口是代理类和目标类的共同接口。原创 2023-03-27 13:31:05 · 203 阅读 · 0 评论 -
Spring6 - (13) JdbcTemplate的使用
JdbcTemplate是操作数据库的类,连接数据库需要Connection对象,而生成Connection对象是数据源负责的。JdbcTemplate是Spring提供好的类,这类的完整类名是:org.springframework.jdbc.core.JdbcTemplate。new对象就可以了。数据源的作用是获取connection,只要是实现了javax.sql.DataSource接口的都是数据源,C3P0、druid都是数据源。第二步:将德鲁伊中的数据源配置到spring配置文件中。原创 2023-03-27 03:38:59 · 107 阅读 · 0 评论 -
Spring6 - (12) Spring IoC注解
以上是自定义了一个注解:Component该注解上面修饰的注解包括:Target注解和Retention注解,这两个注解被称为元注解。Target注解用来设置Component注解可以出现的位置,以上代表表示Component注解只能用在类和接口上。Retention注解用来设置Component注解的保持性策略,以上代表Component注解可以被反射机制读取。是Component注解中的一个属性。该属性类型String,属性名是value。原创 2023-03-27 03:31:09 · 131 阅读 · 0 评论 -
Spring6 - (11) 反射机制
Java反射机制(Java Reflection)是Java语言中一种动态(运行时)访问、检测、修改它本身的能力,主要作用是动态(运行时)获取类的完整结构信息和调用对象的方法。获取该对象的成员变量或者赋值调用该对象的方法(含构造方法,有参/无参)判断该对象所属的类一般情况下,我们使用某个类,都会知道这个类,以及要用它来做什么,可以直接通过new实例化创建对象,然后使用这个对象对类进行操作,这个就属于正射。原创 2023-03-27 03:22:57 · 317 阅读 · 0 评论 -
Spring6 - (10) Bean 的循环依赖问题
什么是循环依赖?A对象中有B属性。B对象中有A属性,我依赖你,你也依赖我。比如:丈夫类Husband,妻子类Wife。Husband中有Wife的引用。Wife中有Husband的引用。原创 2023-03-27 03:09:39 · 123 阅读 · 0 评论 -
Spring6 - (09) Bean 的生命周期
Spring其实就是一个管理Bean对象的工厂。它负责对象的创建,对象的销毁等。所谓的生命周期就是:对象从创建开始到最终销毁的整个过程。对应Bean的生命周期,我们需要掌握以下几点:- 什么时候创建Bean对象?- 创建Bean对象的前后会调用什么方法?- Bean对象什么时候销毁?- Bean对象的销毁前后调用什么方法?原创 2023-03-26 19:42:39 · 156 阅读 · 0 评论 -
Spring6 - (08) Bean 的实例化方法
java.util.Date在Spring中被当做简单类型,简单类型在注入的时候可以直接使用value属性或value标签来完成。但我们之前已经测试过了,对于Date类型来说,采用value属性或value标签赋值的时候,对日期字符串的格式要求非常严格,必须是这种格式的:Mon Oct 10 14:30:26 CST 2022。其他格式是不会被识别的。如以下代码:第一步:创建DateBean类} }第二步:配置beans.xml原创 2023-03-26 19:37:40 · 416 阅读 · 0 评论 -
Spring6 - (07) GoF之工厂模式
工厂模式是解决对象创建问题的,所以工厂模式属于创建型设计模式。策略模式、模板方法模式、责任链模式、观察者模式、迭代子模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式。不过除了GoF23种设计模式之外,还有其它的设计模式,比如:JavaEE的设计模式(DAO模式、MVC模式等)。代理模式、装饰模式、适配器模式、组合模式、享元模式、外观模式、桥接模式。单例模式、单例模式、抽象工厂模式、抽象工厂模式、原型模式。工厂方法模式可以解决简单工厂模式中的OCP问题。简单工厂模式是工厂方法模式的一种。原创 2023-03-26 19:26:34 · 63 阅读 · 0 评论 -
Spring6 - (06) Bean 的作用域
这样Spring会在每一次执行getBean()方法的时候创建Bean对象,调用几次则创建几次。那你可能会问:scope如果没有配置,它的默认值是什么呢?默认值是singleton,单例的。这个对象在什么时候创建的呢?可以为SpringBean提供一个无参数构造方法,测试一下。可以看到这一次在初始化Spring上下文的时候,并没有创建Bean对象。默认情况下,Spring的IoC容器创建的Bean对象是单例的。第一步:创建SpringBean类。第一步:创建SpringBean类。修改beans.xml。原创 2023-03-25 16:38:36 · 220 阅读 · 0 评论 -
Spring6 - (05) Srping 对IoC的实现
1.控制反转是一种思想。2.控制反转是为了降低程序耦合度,提高程序扩展力,达到OCP原则,达到DIP原则。3.控制反转,反转的是什么?将对象的创建权利交出去,交给第三方容器负责。将对象和对象之间关系的维护权交出去,交给第三方容器负责。4.控制反转这种思想如何实现呢?依赖注入是控制反转的思想的实现。Spring通过依赖注入的方式来完成Bean管理的。Bean管理说的是:Bean对象的创建,以及Bean对象中属性的赋值(或者叫做Bean对象之间关系的维护)。依赖注入:依赖注入常见的实现方式包括两种:set注入,原创 2023-03-25 16:36:57 · 271 阅读 · 0 评论 -
Spring6 - (04) Srping 启用日志框架
在项目开发中,日志十分的重要,不管是记录运行情况还是定位线上问题,都离不开对日志的分析。日志记录了系统行为的时间、地点、状态等相关信息,能够帮助我们了解并监控系统状态,在发生错误或者接近某种危险状态时能够及时提醒我们处理,同时在系统产生问题时,能够帮助我们快速的定位、诊断并解决问题。是一个开源的日志记录组件,使用非常的广泛。在工程中以易用方便代替了 System.out 等打印语句,它是JAVA下最流行的日志输入工具。Log4j2主要由几个重要的组件构成:(1)日志信息的优先级。原创 2023-03-25 16:15:24 · 294 阅读 · 0 评论 -
Spring6 - (03) Spring 入门程序
创建一个Bean类 User/*** bean 封装用户信息。原创 2023-03-25 16:12:36 · 191 阅读 · 0 评论 -
Spring6 - (02) Spring 概述
Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring最初的出现是为了解决EJB臃肿的设计,以及难以测试等问题。Spring为简化开发而生,让程序员只需关注核心业务的实现,尽可能的不再关注非业务逻辑代码(事务控制,安全日志等)。原创 2023-03-25 16:01:08 · 228 阅读 · 0 评论 -
Spring6 -(01)案例引出 Spring 概念
Spring框架是什么? Spring框架就是一个实现了IoC思想的框架,IoC思想就是控制反转思想。控制反转是什么?用来解决什么问题? 将对象的创建权交出去,将对象和对象之间关系的管理权交出去,由第三方容器来负责创建与维护 解决代码之间的耦合度问题,可以降低代码之间的耦合度,让代码符合OCP开闭原则和依赖倒置原则。反转是是什么? 反转的是两件事,将对象的创建权/管理权交出去了,把对象关系的管理权交出去了。怎么实现控制反转? 依赖注入依赖注入是什么?原创 2023-03-25 15:53:37 · 159 阅读 · 0 评论