Spring注解开发
Alen_0076
好好学习,天天向上
展开
-
SpringBoot学习(三)--@Conditional按条件注册
SpringBoot在扫描到META-INFO下的spring.factories下的AutoConfiguration类的时候是怎么去判断是否需要注册这个类的呢?这里就有一个很重要的接口Condition。在SpringBoot中存在大量的条件注解ConditionOnXXX,这些注解在自动配置类的上面都能见到,比如:先看一下SpringBoot中的常用Condition注解:条件化注解配置生效条件@ConditionalOnBean配置了某个特定Bean@Condit原创 2020-06-20 21:34:25 · 914 阅读 · 0 评论 -
SpringBoot学习(二)--以HttpEncodingAutoConfiguration为例查看自动配置原理
HttpEncodingAutoConfiguration解读先整体看一下HttpEncodingAutoConfiguration的源码: //表明该类为一个配置类@Configuration //启动指定类的ConfigurationProperties功能,将配置文件中对应的值和HttpProperties绑定起来,并将其加入到ioc容器中@EnableConfigurationP...原创 2020-03-09 20:51:51 · 318 阅读 · 0 评论 -
SpringBoot学习(一)--从HelloWorld入手,解析SpringBootApplication
1.SpringBoot 简介简化Spring应用开发的框架,是整个Spring技术栈的一个大整合,J2EE开发的一站式解决方案2.从简单的Hello Word入手新建一个SpringBoot有两种方法:2.1 Spring官网教程,新建一个HelloWorld的SpringBoot项目2.2 新建一个Maven项目,pom.xml如下<!-- Inherit defaults ...原创 2020-03-08 22:28:54 · 382 阅读 · 0 评论 -
浅析Spring-Mybatis的结合--Mapper接口代理的创建
学习Spring-Mybatis的整合首先需要明白以下几个Spring的扩展点1.@Import2.FactoryBean3.InitializingBean下面是一个简单的Mybatis-Spring查询功能的实现案例:首先看一下@MapperScan原创 2020-05-31 11:12:32 · 455 阅读 · 0 评论 -
Spring注解开发之@Configuration解析
在读Spring源码的时候,很多时候能看到Spring内部的一些类,并且一直没捋清楚@Configration配置类的信息是在哪里读取的。下面我们来看一下Spring容器创建时,如何解析@Configuration配置类的。此处以SpringBoot2.1.8版本为例学习相关源码。从启动类开始:SpringApplication.run(Practice09Application.class...原创 2020-03-08 12:49:17 · 291 阅读 · 0 评论 -
Spring注解开发(七)Spring容器创建
下图是AnnotationConfigApplicationContext的主要实现及继承类图:从图中可以看到:AnnotationConfigApplicationContext继承GenericApplicationContext这个通用应用上下文,GenericApplicationContext内部定义了一个DefaultListableBeanFactory实例,GenericA...原创 2020-01-15 22:16:26 · 336 阅读 · 0 评论 -
Spring注解开发(六)扩展原理
在解析SpringIOC容器创建之前,我们先来看以下扩展原理:1.BeanFactoryPostProcessor2.BeanDefinitionRegistryPostProcessor3.ApplicationListener/@EventListener与SmartInitializingSingleton一、BeanFactoryPostProcessor Bean...原创 2019-11-26 21:57:48 · 312 阅读 · 0 评论 -
Spring注解开发(五)声明式事务
先看一个简单的例子:新建Dao类,代码如下:@Repositorypublic class PersonDao { @Autowired private JdbcTemplate jdbcTemplate; public void insert() { String sql = "insert into tb_person(personNam...原创 2019-10-22 23:22:50 · 194 阅读 · 0 评论 -
Spring注解开发(四)AOP原理与源码分析
先来看一个简单的例子:先建一个Person类作为业务类:public class Person { public int doDivision(int a, int b) { return (a / b); }}新建切面类LogWriter,此处只加了两个通知:@Aspect //指定此类为一个切面类public class LogWrite...原创 2019-10-20 19:13:43 · 202 阅读 · 0 评论 -
Spring注解开发(三)属性赋值与自动装配
新建一个配置类,如下:@Configuration@ComponentScan(value = "com.practice.bean")public class MainConfig { @Bean public Person person() { return new Person(); }}一,@Value赋值1、基本数值,2、S...原创 2019-10-13 20:29:28 · 242 阅读 · 0 评论 -
Spring注解开发(二)生命周期
一,通过@Bean注解指定初始化和销毁方法<bean id="person" class="com.practice.bean.Person" init-method="" destroy-method="" >和在XML配置文件中的格式一样,在@Bean注解中也有这两个属性String initMethod() default "";String destroyM...原创 2019-10-11 22:56:22 · 202 阅读 · 0 评论 -
Spring注解开发(一)组件注册
Spring组件注册就是让Spring的IOC容器去管理组件的这个bean,SPring组件基于注解的注册方法主要有以下几种:首先需要一个@Configuration注解的配置类,告诉Spring容器配置的入口,和xml配置文件的功能一样一:@Bean首先新建一个Person类,属性为String:name,Integer:age;新建配置类,代码如下:@Confi...原创 2019-09-28 22:31:10 · 210 阅读 · 0 评论