博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot基础梳理
阅读量:5111 次
发布时间:2019-06-13

本文共 2011 字,大约阅读时间需要 6 分钟。

1.入口类和@SpringBootApplication注解:

SpringBoot通常有一个名为*Application的入口类,入口类里面有main方法,我们可以通过启动main方法启动springboot应用

@SpringBootApplication是SpringBoot的核心注解,他是一个组合注解,源码如下:

1 @Target({ ElementType.TYPE }) 2 @Retention(RetentionPolicy.RUNTIME) 3 @Documented 4 @Inherited 5 @SpringBootConfiguration 6 @EnableAutoConfiguration 7 @ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = { TypeExcludeFilter.class }) }) 8 public @interface SpringBootApplication { 9     Class
[] exclude() default {};10 11 String[] excludeName() default {};12 13 @AliasFor(annotation = ComponentScan.class, attribute = "basePackages")14 String[] scanBasePackages() default {};15 16 @AliasFor(annotation = ComponentScan.class, attribute = "basePackageClasses")17 Class
[] scanBasePackageClasses() default {};18 }

如果我们不使用@SpringBootApplication,我们可以直接在入口类上使用

@SpringBootConfiguration

@EnableAutoConfiguration
@ComponentScan

其中@EnableAutoConfiguration 是让Springboot根据类路劲中的jar包依赖为当前项目进行自动配置

例如:我们添加了spring-boot-starter-web依赖后,会自动添加Tomcat和SpeingMVC的依赖,那么Spring Boot会对Tomcat和SpringMVC进行自动配置

 

2.使用xml配置Springboot

我们可以通过@ImportResource来加载xml配置

例如:

@ImportResource("classpath:some-context.xml")

 

3.基于安全的配置类型

Springboot可以通过@ConfigurationProperties将properties和一个Bean及其属性关联,从而实现安全的配置

例如:

1 @Component 2 @ConfigurationProperties(prefix="author")//通过@ConfigurationProperties加载指定的properties文件内容 3 //通过prefix属性指定properties的配置前缀,通过location指定properties文件的位置,例如: 4 //@ConfigurationProperties(prefix="author",locations="classpath:config/author.properties")  本例不需要配置location 5 public class AuthorSettings { 6     private String name; 7     private Long age; 8     public String getName() { 9         return name;10     }11     public void setName(String name) {12         this.name = name;13     }14     public Long getAge() {15         return age;16     }17     public void setAge(Long age) {18         this.age = age;19     }20 }

配置文件如下

author.name=xmzauthor.age=23

 

 

转载于:https://www.cnblogs.com/xmzJava/p/7260233.html

你可能感兴趣的文章
poj2752 Seek the Name, Seek the Fame
查看>>
程序员的数学
查看>>
聚合与组合
查看>>
洛谷 P2089 烤鸡【DFS递归/10重枚举】
查看>>
ionic2+ 基础
查看>>
Screening technology proved cost effective deal
查看>>
Thrift Expected protocol id ffffff82 but got 0
查看>>
【2.2】创建博客文章模型
查看>>
从零开始系列之vue全家桶(1)安装前期准备nodejs+cnpm+webpack+vue-cli+vue-router
查看>>
Jsp抓取页面内容
查看>>
大三上学期软件工程作业之点餐系统(网页版)的一些心得
查看>>
可选参数的函数还可以这样设计!
查看>>
[你必须知道的.NET]第二十一回:认识全面的null
查看>>
Java语言概述
查看>>
关于BOM知识的整理
查看>>
使用word发布博客
查看>>
面向对象的小demo
查看>>
微服务之初了解(一)
查看>>
GDOI DAY1游记
查看>>
收集WebDriver的执行命令和参数信息
查看>>