Spring 5
文章平均质量分 69
认清Spring框架的原理
保持敬畏
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring整合Web环境
负责共有行为的Servlet称为前端控制器,负责业务行为的JavaBean称为控制器Controller。原创 2023-10-07 20:10:07 · 132 阅读 · 0 评论 -
Spring的事务控制
事务是开发过程中必不可少的东西,使用JDBC开发时,我们使用connection对事务进行控制,使用MyBatis时,我们使用SqlSession对事物进行控制,缺点显而易见,当我们切换数据库访问技术时,事务控制的方法总会改变。Spring就在这些技术的基础上,提供了统一的控制事务接口。Spring的事务分为:编程式事务和声明式事务控制。事务控制方式解释编程式事务控制Spring提供了事务控制的类和方法,使用编程的方法对业务代码进行事务控制,事务控制代码和业务操作代码耦合在一起,开发中不使用。原创 2023-10-06 20:09:41 · 461 阅读 · 0 评论 -
Spring的AOP开发-注解方式开发AOP
不同命名空间对应不同解析器,然后一步步追溯源码,最终还是落脚到实现BeanPostProcessor接口,重写其中的postProcessAfterInitialization方法,向容器中注册bean对象。还是通过标签中的命名空间对应的命名空间处理器,在MATE-INF文件夹下的spring.handlers文件夹中,进行查找。查看注解类中的关键注解@EnableAspectJAutoProxy,同样的,可以使用配置类来代替上述的配置文件实现全注解开发。测试类中的获取Spring容器的方法也要改变一下。原创 2023-10-06 10:31:02 · 286 阅读 · 0 评论 -
Spring的AOP开发-基于xml配置的AOP
【代码】Spring的AOP开发-基于xml配置的AOP。原创 2023-10-05 18:56:40 · 539 阅读 · 2 评论 -
Spring的AOP开发-AOP简介
AOP,Aspect Oriented Programming,面向切面编程,是对面向对象编程OOP的生化,OOP是纵向对一个事务的抽象,一个对象包括静态的信息属性,包括动态的方法信息等。而AOP是横向对不同事务的抽象,属性与属性(多个对象的属性进行抽取)、方法与方法(多个对象的方法进行抽取)、对象与对象(多个对象进行抽取)都可成为一个切面,而用这种思维去设计编程的方法叫做面向切面编程。原创 2023-10-05 15:53:58 · 208 阅读 · 0 评论 -
Spring的注解开发-@Import整合第三方框架原理
Spring与MyBatis注解方式整合有个技术重点就是@Import,第三方框架与Spring整合xml方式很多是凭借自定义标签完成的,而第三方框架与Spring整合注解方式很多是靠@Import注解完成的。原创 2023-10-03 18:55:10 · 287 阅读 · 0 评论 -
Spring的注解开发-注解方式整合MyBatis代码实现
用注解的方式整合第三方框架,以MyBatis框架为例,首先得与数据库建立连接的操作由配置文件转换为配置类,使用@Bean注解,Spring框架会自动调用这两个方法,并生成对应的bean对象交给Spring容器管理,与数据库成功建立连接。然后在业务层直接注入Mapper接口对象,调用其中的方法,实现对于数据库的操作。与数据库建立连接的同时,扫描指定的mapper接口,实现实现数据库的操作。上述中直接注入的mapper接口类。原创 2023-10-03 18:01:32 · 430 阅读 · 2 评论 -
Spring的注解开发-注解原理解析-xml方式/注解方式组件扫描
【代码】Spring的注解开发-注解原理解析-xml方式组件扫描。原创 2023-10-01 17:56:21 · 626 阅读 · 0 评论 -
Spring的注解开发-Spring配置其它注解
Spring配置其它注解@Primary拓展:@Primary注解用于标注相同类型的Bean优先被使用权,@Primary是Spring3.0引入的,与@Componen(及其衍生的三个注解)t和@Bean一起使用,标注该Bean的优先级更高,则在通过类型获取Bean或通过@Autowired根据类型注入时,会选用优先级更高的 @Profile拓展:@Profile注解的作用等同于xml配置时学习的profile属性,是进行环境切换使用的,注解@Profile标注在类或方法上,标注当前原创 2023-10-01 16:56:53 · 183 阅读 · 0 评论 -
Spring的注解开发-Spring配置类的开发
【代码】Spring的注解开发-Spring配置类的开发。原创 2023-10-01 15:51:12 · 187 阅读 · 0 评论 -
Spring的注解开发-非自定义Bean的配置
非自定义Bean不能象自定义Bean一样使用@Component注解及其衍生注解进行管理,非自定义Bean要通过工厂的方式进行实例化,使用@Bean标注即可,@Bean的属性为beanName,使用@Bean注解作用在方法中,通过定义一个方法,将非自定义bean的结果返回,配合@Bean注解将其交给Spring容器管理。ps:方法所在类必须交给Spring容器管理,从而才能让Spring对类中的方法进行管理。@Component // 将该类交给Spring容器管理。原创 2023-10-01 15:13:18 · 293 阅读 · 0 评论 -
Spring注解开发-依赖注入@Autowired扩展
【代码】Spring注解开发-依赖注入@Autowired扩展。原创 2023-09-30 16:49:41 · 157 阅读 · 0 评论 -
Spring的注解开发-依赖注入相关注解
在之前的学习中,Bean的依赖注入主要是通过xml配置文件中<property>来完成属性的注入操作,在往期的bean创建的文章中,都是以xml方式来完成bean对象的配置。Spring主要提供以下注解,用于Bean内部进行属性注入。原创 2023-09-30 15:37:04 · 220 阅读 · 0 评论 -
Spring的注解开发-@Component的三个衍生注解
ps:属于上述三层架构中的任意一层的,则一般约定使用@Component注解。原创 2023-09-30 14:33:53 · 221 阅读 · 0 评论 -
Spring的注解开发-作用范围等注解的使用
【代码】Spring的注解开发-作用范围等注解的使用。原创 2023-09-30 14:18:45 · 150 阅读 · 0 评论 -
Spring的注解开发-Bean基本注解开发
在配置文件中设置注解组件扫描范围,识别@Component注解。测试代码,获取bean对象。原创 2023-09-30 13:36:38 · 202 阅读 · 0 评论 -
Spring整合第三方框架
自定义的命名空间中可能会配置很多标签,不同的标签对应不同的解析器,由此我们在创建第三方框架时,要创建META-INF/spring.handlers文件,在该文件中将不同的标签与不同的解析器(Namespacehandler)对应起来,解析器一般都实现对应的接口(NamespaceHandler),在解析器中会重写init()方法(--xxx。原创 2023-09-29 18:54:34 · 320 阅读 · 0 评论 -
Spring整合MyBatis原理
ps:对于这段知识的讲解,都是根据源码来进行讲解,我听得比较似懂非懂。原创 2023-09-28 16:04:59 · 158 阅读 · 0 评论 -
Spring整合第三方框架-MyBatis整合Spring实现
上述接口实现类的代码中,将Mapper接口类的对象直接进行注入(与配置文件中的配置相对应)接口实现类UserServiceImpl。运行测试代码结果如下。原创 2023-09-28 15:24:54 · 220 阅读 · 0 评论 -
Spring整合第三方框架-MyBatis原始操作代码
MyBatis配置文件,定义和配置MyBatis框架的各种参数和属性,以及映射文件的路径和数据库连接信息。Mapper接口类对应的xml配置文件,用于实行Mapper接口类中对于数据库的操作。Mapper接口类,定义对于数据库的操作。测试类代码,实现MyBatis功能。实体类,用于封装数据库数据。原创 2023-09-26 19:58:51 · 168 阅读 · 0 评论 -
Spring整合第三方框架的两种方案(XML方式)
Spring XML方式整合第三方框架xml整合第三方框架有两种整合方案 不需要自定义名空间,不需要使用Spring的配置文件配置第三方框架本身内容,例如:MyBatis 需要引入第三方框架命名空间,需要使用Spring的配置文件配置第三方框架本身内容,例如:Dubbo原创 2023-09-26 19:16:10 · 129 阅读 · 0 评论 -
Spring IOC容器实例化Bean整体流程图
修改Bean的定义:通过实现BeanFactoryPostProcessor接口,可以在Spring容器实例化Bean之前修改Bean的定义信息,例如修改Bean的属性值、修改Bean的作用域、添加自定义的初始化方法等。实现AOP相关的功能:BeanPostProcessor接口可以用于实现AOP相关的功能,例如将Bean的代理对象替换为原始的Bean对象,或者在Bean的方法执行前后进行拦截和增强。执行时机:在BeanDefinitionMap填充完毕,Bean实例化之前执行。原创 2023-09-26 18:38:58 · 1517 阅读 · 0 评论 -
SpringBean的生命周期
若配置文件中先创建UserService的bean对象。若配置文件中先创建UserADO的bean对象。UserDAOImpl类。原创 2023-09-23 18:05:15 · 391 阅读 · 0 评论 -
Spring后处理器-BeanPostProcessor
展示了该后处理器的执行时机。该后处理器的执行时机。原创 2023-09-21 13:16:19 · 233 阅读 · 0 评论 -
Spring的后处理器-BeanFactoryPostprocessor
【代码】Spring的后处理器。原创 2023-09-20 17:58:23 · 438 阅读 · 0 评论 -
SpringBean实例化的基本流程
Bean实例化的基本流程Spring容器在进行初始化时,会将xml配置的<bean>的信息封装成一个BeanDefinition对象(存储<bean>标签的信息,一个<bean>标签对应一个BeanDefinition对象),所有的BeanDefinition存储到一个名为beanDefinitionMap的Map集合中去,Spring框架在对该Map进行遍历,使用反射创建Bean实例对象(object),创建好的Bean对象存储到一个名为singletonObjec原创 2023-09-20 17:22:24 · 262 阅读 · 0 评论 -
Spring配置非定义的Bean
在前文中,xml配置文件中的Bean都是我们自己定义配置的,例如:UserDaoImpl,UserDAO等。但是在实际开发过程中有些功能类并不是我们自己定义的,而是使用第三方jar包中的,俺么这些Bean要想让Spring进行管理,也需要对其进行配置。配置非自定义的Bean需要考虑如下两个问题被配置的bean的实例化方式是什么?无参构造,有参构造(构造方法),静态工厂方式还是实例工厂方式(工厂方式写文章-优快云创作中心被配置的Bean是否需要注入必要属性。原创 2023-09-20 16:51:59 · 150 阅读 · 0 评论 -
Spring常见的三种getBean的API
返回值和参数。原创 2023-09-20 13:56:42 · 305 阅读 · 0 评论 -
基于Xml方式Bean的配置-命名空间种类
beans>p27明天再来。原创 2023-09-19 21:32:03 · 466 阅读 · 0 评论 -
基于Xml方式Bean的配置-Bean的依赖注入以及·自动装配
其中,ref是reference的缩写形式,翻译为:涉及,参考的意思,用于引用其它Bean的id,value用于指定属性值。普通数据类型:String、int、boolean,通过value属性指定。引用数据类型:UserDAOImpl,通过ref属性指定。集合数据类型:List、Map、Properties等。配置文件(两种方式都可以)原创 2023-09-19 19:10:49 · 388 阅读 · 0 评论 -
基于Xml方法的Bean的配置-实例化Bean的方法-构造方法
【代码】基于Xml方法的Bean的配置-实例化Bean的方法-构造方法。原创 2023-09-17 21:25:22 · 389 阅读 · 0 评论 -
基于Xml方式Bean的配置-初始化方法和销毁方法
指定的方法名于自己创建的方法名一致即可。原创 2023-09-17 20:52:51 · 564 阅读 · 0 评论 -
基于Xml方式Bean的配置-Bean的延时加载
【代码】基于Xml方式Bean的配置-Bean的延时加载。原创 2023-09-17 20:19:20 · 854 阅读 · 0 评论 -
基于Xml方式的Bean的配置-Bean的作用范围scope配置
PS:如果添加了SpringWebMVC依赖,scope的值就有多个。当scope=prototype时。原创 2023-09-17 19:33:49 · 691 阅读 · 0 评论 -
基于Xml方式Bean的配置-beanName个别名配置
此时存储到Spring容器(singleObjects单例池)中的beanName是userService,值是UserServiceImpl对象,可以根据beanName获取bean实例。如果不配置id,则Spring会把当前Bean实例全限定名作为beanName。可以为当前bean配置多个别名、根据别名也可以获取bean对象。Bean的别名配置(几乎不使用)原创 2023-09-17 19:10:49 · 583 阅读 · 0 评论 -
基于XML方式的Bean的配置概述
通过name设置Bean的别名,通过别名也能够直接获取Bean实例。指定哪个工厂的Bean的哪个方法完成Bean的创建。Bean的id和全限定名配置。原创 2023-09-17 18:11:13 · 665 阅读 · 0 评论 -
BeanFactory和ApplicationContext的继承体系
BeanFactory的继承体系B是核心接口,项目运行过程中肯定有具体实现参与,这个具体实现就是DefaultListableBeanFactory,而A内部维护的B的实现类也是它 ApplicationContext的继承体系只有在Spring基础环境下,此时的A的继承体系(多少会有一些出入,其中加入了web层解决方案) 常见的三个ApplicationContext作用如下: 实现类 功能描述 ClassPathXmlApplicationC原创 2023-09-17 17:56:18 · 110 阅读 · 0 评论 -
ApplicationContext版本的快速入门
ApplicationContext快速入门ApplicationContext称为Spring容器,内部封装了BeanFactory,比BeanFactory功能更加丰富和强大,使用ApplicationContext进行开发时,xml配置文件的名称习惯写成applicationContext.xml。BeanFactory和ApplicationContext的关系B是Spring的早期接口,称为Spring的Bean工厂,A是后期更高级的接口,称之为Spring的容器。 A在B的基础上对功原创 2023-09-17 17:17:44 · 124 阅读 · 0 评论 -
BeanFactory版本的快速入门
IDEA创建Spring项目是,使用maven接口已经自动将必要的依赖添加进入pom.xml配置文件中了。原创 2023-09-17 16:08:06 · 130 阅读 · 0 评论 -
Spring的概述
Spring是一个开源的轻量级java开发应用框架,可以简化企业级应用开发,Spring解决了开发者在JavaEE开发中涉及许多常见的问题。提供强大的IOC、AOP以及Web MVC等功能。是当前企业中java开发几乎不可能缺少的框架之一。Spring的生态及其完善,不管是Spring哪一个领域都依附在Spring Framwork基础框架的。原创 2023-09-17 15:29:50 · 157 阅读 · 0 评论
分享