引言:Spring 从4.x版本开始提倡java配置和注解结合使用,慢慢离开xml繁琐的配置,所以要入门SpringBoot,需要从java配置开始

1.首先导入POM

 

java写的config文件怎么执行 java中config_xml

2.建立一个配置文件(xml),然后申请一个容器,获得bean

 

java写的config文件怎么执行 java中config_xml_02

这是一个极其精简的XML配置文件了

 

java写的config文件怎么执行 java中config_java写的config文件怎么执行_03

1.可以尝试使用Spring javaconfig的方式来获得配置并且获得bean,pom文件不变。

 

2.下图是javaconfig类截图

    

java写的config文件怎么执行 java中config_java写的config文件怎么执行_04

@Configuration:标明当前类是一个配置类

@ComponentScan(basePackages={"com.turing.Component"}) :扫描的包,相当于xml配置的

<context component-scanner/>

@Bean:表明返回一个bean,该bean由Spring管理

 

(1.为什么要使用javaconfig,这是因为SpringBoot提倡’零配置’,习惯由于配置,SpringBoot其实很多自动配置时基于javaconfig中的@Conditional条件注解,后面会陆续提出来)

(2.SpringBoot真正使用起来只需要少量的配置,key-value的形式配置在application.properties里面,其余的最精简的写法就是利用javaconfig和注解)

 

 

--------------------------------------------------分割线------------------------------------------------------------------

下面介绍几个javaconfig的注解,来完成AOP功能,定时功能,条件Bean功能,配置MVC

 

1.AOP(需要加入Aspectj的pom依赖)

 

java写的config文件怎么执行 java中config_java_05


java写的config文件怎么执行 java中config_xml_06


java写的config文件怎么执行 java中config_java写的config文件怎么执行_07

 

 

 

1.首先,需要在配置类加入注解,然后申请一个Aspectj切面,定义切点

@EnableAspectJAutoProxy(开启对Aspectj代理的支持)

@Aspect(申明Aspectj切面),并且需要在切面类加入Spring的管理@Component

 

2.计划任务

Quterz是一个定时调度任务框架,Spring对其支持很好,当然Spring也自己内置了一个注解,可以方便的开启计划任务,首先需要利用注解@Scheduled在需要计划任务的方法,然后设置属性,这样当Spring被初始化的时候就会开始调用这个方法,当然还需要在配置类加入@EnableScheduling

 

@EnableScheduling(使当前应用支持计划调度任务)

@Scheduled(在方法上使用,搭配属性,让Spring定时执行)

其中@Scheduled注解后面括号里面可以指定各种参数,在上面代码里面的fixedRate = 6000意思是下面的任务每隔6000毫秒,即每隔6秒执行一次。 

下面简单提一下cron表达式,举个例子:

@Scheduled(cron = "0 0 3 * * ?")  //每天凌晨3:00执行任务

cron表达式中各时间元素使用空格进行分割,分别表示如下含义:
按顺序依次为
秒(0~59)
分钟(0~59)
小时(0~23)
天(月)(0~31,但是你需要考虑你月的天数)
月(0~11)
天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)
7.年份(1970-2099)

具体参考资料:


 

3.条件Bean

条件Bean是SpringBoot完成自动配置的重要组成部分,模拟一个场景,如果一个随机数小于6我们就生产一个Task的实例

 

java写的config文件怎么执行 java中config_xml_08



java写的config文件怎么执行 java中config_java_09

java写的config文件怎么执行 java中config_java写的config文件怎么执行_10

java写的config文件怎么执行 java中config_xml_11

 

java写的config文件怎么执行 java中config_配置文件_12

 

 

 

首先我们要实现Condition接口,然后实现里面的匹配规则,返回boolean类型,让Spring知道是否应该生成实例

------------------------------------------WEB篇------------------------------------------------------------------------

在入门SpringBoot之前,默认大家是已经掌握了SpringMVC Mybatis这2个框架,但是SpringMVC的javaconfig配置方式需要提一提

 

java写的config文件怎么执行 java中config_xml_13

@EnableWebMvc (开启webmvc功能)

 

java写的config文件怎么执行 java中config_java写的config文件怎么执行_14

开启资源映射和拦截器处理

从Servlet3.0开始,web项目可以渐渐远离web.xml的配置文件,可以利用注解去替代

 

java写的config文件怎么执行 java中config_java_15

这是Spring动态加入dispatchServlet的实现,首先需要实现WebApplicationInitializer,然后申请一个Spring容器,并且注册配置类,将Servlet上下文加入到容器中,并且利用Servlet3.0动态加入Servlet,将容器注入到分发器中,最后web项目完成初始化

 

PS:入门javaConfig对SpringBoot的学习有增效作用