
Spring
文章平均质量分 70
总结了Spring框架的学习历程。
神烦狗闯入了你的博客
人是万灵之长,智慧的差异很小,经历,本身也是一种文化。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring文章汇总
Spring文章汇总。原创 2022-06-23 19:08:40 · 194 阅读 · 0 评论 -
Spring基于注解编程详解
注解编程简单来讲指的是在类或方法上加上特定的注解,完成指定功能的开发。为什么要使用注解进行编程?注解有什么作用?替换XML文件配置形式,简化配置替换接口,实现调用双方的契约性Spring注解开发中的一个问题:Spring基于注解进行开发之后会不会导致耦合呢?答:在Spring框架应用注解时,如果对注解的内容不满意,可以通过配置文件进行覆盖。搭建开发环境:2.1 对象创建相关注解@Component作用:相当于在配置文件中使用bean标签创建对象注意: 创建出来的bean的id属性使用@Compone原创 2022-06-14 09:15:41 · 897 阅读 · 0 评论 -
Spring多配置文件使用
注意:虽然提供了多个配置文件,但是后续应用的过程中,还要进行整合 。非web环境Web环境2. 使用import标签定义一个主配置文件,在主配置文件中进行配置。原创 2022-06-14 09:15:29 · 841 阅读 · 0 评论 -
Spring中的事务属性(Transaction Attribute)
事务属性:描述事务特征的一些列值。为注解中的属性赋值,如:3. 事务属性详解3.1 隔离属性(ISOLATION)隔离属性的概念概念:隔离属性描述了事务解决并发问题的特征。事务并发时产生的问题脏读不可重复读幻读总结数据库对于隔离属性的支持默认隔离属性查看数据库默认隔离属性MySQLOracle隔离属性在实战中的建议3.2 传播属性(PROPAGATION)概念传播属性的值及其用法默认的传播属性推荐传播属性的原创 2022-06-14 09:15:15 · 993 阅读 · 0 评论 -
Spring的事务处理
事务是保证业务操作完整性的一种数据库机制。事务的四大特性:结论:控制事务的底层 都是Connection对象完成的。Spring采用AOP开发的方式来实现事务控制。所以需要以下几个基本步骤:3.2 编码UserServiceImpl: 标记注解在Spring配置文件中添加信息3.3 细节分析实际增添额外功能也就是事务功能的是,所以要使用事务就需要在Spring配置文件中对其进行配置。实现事务实际上就是动态代理,所以可以切换动态代理的实现方式(JDK或者CGlib)......原创 2022-06-14 09:15:04 · 154 阅读 · 0 评论 -
Spring整合MyBatis
3. 配置Spring配置文件4. 整合MyBatis的细节问题: Spring与Mybatis整合后,为什么DAO不提交事务,但是数据能够插入数据库中?原创 2022-06-14 09:14:41 · 232 阅读 · 0 评论 -
AOP开发中的一个坑:使用AOP添加的额外方法在业务方法间调用中没有执行
在同一个业务类中,业务方法间进行调用,如方法a调用了方法b,两个方法都增加了额外功能,但是最后在实际调用过程中只有a方法的额外功能实现了,b没有实现。2. 解决方案实现ApplicationContextAware接口重写方法,将ApplicationContext作为成员变量在方法中进行赋值,在调用中使用ApplicationContext对象获取代理对象执行方法。**注意:**不要在方法中创建ApplicationContext对象,因为这个对象代表了Spring工厂,占用资源多,一个程序中应该只存原创 2022-06-14 09:14:23 · 294 阅读 · 0 评论 -
基于AsceptJ注解的AOP编程
上面这几步是面向AOP编程的大致步骤,而基于注解的AOP编程会简化AOP开发的过程。基于注解的AOP开发步骤:代码:配置文件:2. 切入点的复用如果有多个方法需要额外功能,就需要写多注解,但是execution表达式函数内的表达式会出现冗余的现象,所以引入切入点复用技术。使用方式:在切面类中定义⼀个方法上面标记注解通过这种方式,定义切入点表达式,后续更加有利于切入点复用。代码:3. 切换动态代理的创建方式AOP底层是动态代理,动态代理的实现方式有两种,JDK动态代理和CGlib动态代理。通过更改配原创 2022-06-14 09:14:07 · 385 阅读 · 0 评论 -
Spring AOP(面向切面编程)
AOP(Aspect Oriented Programing) 翻译过来就是面向切面编程。可以先来了解一下面向xx编程都是什么意思:那么AOP (Aspect Oriented Programing) 面向切面编程 = Spring动态代理开发以切⾯为基本单位的程序开发,通过切面间的彼此协同,相互调用,完成程序的构建。切面 = 切入点 + 额外功能AOP的本质就是Spring得动态代理开发,通过代理类为原始类增加额外功能。好处:利于原始类的维护切入点是组成切面的单位,简单来讲,切入点就是我们要去对其进原创 2022-06-14 09:13:43 · 588 阅读 · 0 评论 -
Spring中Bean的后置处理
后置处理Bean是Spring工厂在执行创建对象、注入之后的初始化阶段的前后进行的处理。我们通过实现接口并实现其中方法的方式进行后置处理。2. BeanPostProcessor的开发步骤2.1 实现BeanPostProcessor接口并重写方法2.2 Spring配置文件中进行配置将我们自定义的BeanPostProcessor实现类在Spring配置文件中配置:2.3 BeanPostProcessor细节BeanPostProcessor会对Spring工厂中所有创建的对象进行加工。所原创 2022-06-13 21:50:37 · 742 阅读 · 0 评论 -
Spring自定义类型转换器
作用:Spring通过类型转换器把配置文件中字符串类型的数据,转换成了对象中成员变量对应类型的数据,进而完成了注入当Spring内部没有提供特定类型转换器时,而程序员在应用的过程中还需要使用,那么就 需要程序员自己定义类型转换器。设计一个场景,我们在配置文件中想要将日期字符串按照想要的格式转换成Date类型。就需要自定义一个类型转换器。开发步骤:注意全类名为:Converter接口源码:是一个函数式接口。自定义实现类在Spring的配置文件中进行配置MyDateConverter对象创建出来类原创 2022-06-13 21:49:29 · 433 阅读 · 0 评论 -
Spring配置文件参数化
这里以数据库连接的配置为例。db.properties:2. 在Spring配置文件中与小配置文件整合ApplicationContext.xml:3. 在Spring配置文件中通过${key}获取小配置文件中对应的值原创 2022-06-13 21:48:12 · 250 阅读 · 0 评论 -
Spring工厂的高级特性
对象的生命周期指的是对象的创建、存活、销毁的过程。理解解对象的生命周期有助于我们使用Spring创建对象。注意:后文中的生命周期不是指在JVM中的生命周期,而是指在Spring工厂中的生命周期。Spring工厂什么时候会创建对象?①工厂创建之后就开始创建scope=“singleton”,默认情况也scope的值也是singleton。②懒加载:Spring工厂会在获取对象的同时,创建对象scope=“prototype”,将scope的值是prototype时就是懒加载的同时scope="singleto原创 2022-06-13 21:47:26 · 210 阅读 · 0 评论 -
控制Spring工厂创建对象的个数(对象是否单例)
但是对象创建的次数同样是需要留意的。在Spring配置文件中通过属性来指定:: 只会创建⼀次简单对象 默认值: 每⼀次都会创建新的对象2. 如何控制复杂对象的创建个数继承FactoryBean接口同时重写方法。3. 为什么要限制创建对象的个数因为有一些大的对象会占用很多资源,所以需要限制个数,而有些对象朝生夕死,所以不需要控制创建个数。什么样的对象只创建一次?什么样的对象每一次都要创建新的?......原创 2022-06-13 21:46:28 · 247 阅读 · 0 评论 -
Spring工厂创建对象分析
简单对象指的就是可以通过new的方式就创建出的对象。只要写好相关配置文件,简单对象就可以通过Spring工厂创建。创建类文件编写配置文件2. 创建复杂对象2.1 什么是复杂对象?复杂对象:指的就是不能直接通过new构造方法创建的对象例如:连接数据库所需要的对象,需要创建它就需要先创建另一个对象并且经过一些操作才能获取。类似的还有Mybatis中的。编写Spring配置文件细节分析体会依赖注入的使用将连接信息都作为成员变量,之后在Spring配置文件中指定值Spring配置文件:②原创 2022-06-13 21:45:19 · 473 阅读 · 0 评论 -
Spring的IOC(控制反转)与DI(依赖注入)
控制反转(Inversion of Control,缩写IoC),是面向对象编程中的一种设计原则。通过控制反转可以降低代码之间的耦合。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。如何理解控制反转呢?依赖注入Dependency Injection简称DI,依赖注入是控制反转的实现方式之一。什么是依赖注入呢?通过依赖注入是控制反转的实际实现。通过控制反转的理念与依赖注入相结合,可以减少代码之间的耦合性。...原创 2022-06-13 21:43:02 · 1002 阅读 · 0 评论 -
Spring注入详解
简单来讲,就是通过Spring工厂及配置⽂件,为所创建对象的成员变量赋值。而这个注入的方式又有很多种。接下来的文章会一一介绍。通过编码的方式,为成员变量进行赋值,存在耦合,有了注入就可以很大程度上减少耦合。3. Set注入Spring通过底层调用对象属性对应的set方法,完成成员变量的赋值,这种方式我们也称之为set注入。3.1.2 数组3.1.3 Set集合3.1.4 List集合3.1.5 Map集合3.1.6 ProperitesProperties类型特殊的Map key=原创 2022-06-13 21:40:35 · 686 阅读 · 0 评论 -
Spring核心API分析
访问Maven仓库官网获取依赖,将依赖配置复制到pom文件中。2. 核心API分析ApplicationContextApplicationContext是一个接口类型ApplicationContext接口的实现的两个主要实现:是一个重量级资源3.2 配置配置文件ApplicationContext.xml3.3 通过工厂类获得对象使用单元的测试的方式,就用来获取实例。控制台输出:4. 细节分析4.1 名词分析Spring工厂创建的对象,叫做或者组件()4.2 Spring工厂的原创 2022-06-13 21:39:15 · 311 阅读 · 0 评论 -
Spring引言
EJB是Enterprise Java Beans技术的简称, 又被称为企业Java Beans。这种技术最早是由美国计算公司研发出来的。EJB技术的诞生标志着Java Beans的运行正式从客户端领域扩展到服务器领域。在电子商务领域运用EJB技术可以简化应用系统的开发, 这是由该技术的结构和特点所决定的。但是EJB有一些缺陷:总之,EJB是一个重量级的框架。Rod Johnson是Spring框架的创始人,同时也是SpringSource的联合创始人。Spring是面向切面编程(AOP)和控制反转(IoC原创 2022-06-13 21:37:12 · 148 阅读 · 0 评论