springboot 初探 、基础及配置
一、spring boot 的核心功能
独立运行的spring项目、内嵌servlet容器、提供starter简化maven配置、自动配置Spring、准生产的应用监控、无代码生成和xml配置
二、spring boot的优点:
快速构建项目;对主流开发框架的无配置集成 ;项目可独立运行,无须外部依赖servlet容器;
提供运行时的应用监控;极大地提高了开发、部署效率;与云计算的天然集成
三、spring boot的基本配置
1、入口类和@SpringBootApplication
@SpringBootApplication组合了@Configuration@EnableAutoConfiguation和@ComponetScan;
其中@EnableAutoConfiguation让Springboot根据类路径中的jar包依赖为当前项目进行自动配置
2、关闭特定的自动配置
使用@SpringBootApplication的注解exclude参数
@SpringBootApplication(exclude={DataSourceAutoConfiguration.calss})
3、定制banner
4、springboot的配置文件
application.properties或者application.yml,放置在src/main/resources目录或者类路径的/config下
5、starter pom 包括官方提供的starter pom和第三方提供的starter pom
6、使用xml配置
使用spring提供的@ImportResource来加载xml配置
@ImportResource({"classpath:some-context.xml","classpath:another-context.xml"})
四、spring boot的外部配置
spring boot 允许使用properties文件、yaml文件或者命令行参数作为外部配置
1、命令行参数配置 java -jar xx.jar --server.port=9999
2、常规属性配置 直接使用@value注入相对应的application.properties中的属性即可
3、基于类型安全的配置
通过@ConfigurationProperties讲propertis属性和一个Bean及其属性关联
如:application.properties中配置
author.name=wyf
author.age=32
可以建立一个类型安全的Bean 如下
@Component
@ConfigurationProperties(prefix="author")
public class AuthorSettings{
private String name;
private Long age;
-----
}
@ConfigurationProperties加载属性文件内的配置通过prefix属性指定属性的配置前缀,通过locations指定属性文件的位置
五、日志配置
spring boot 默认使用logback作为日志框架,已为当前使用日志框架的控制台输出及文件输出做好了配置
logging.file=D:/mylog/log.log
logging.level.包名=级别
六、Profile配置
profile 是spring用来针对不同的环境对不同的配置提供支持的,全局Profile配置使用application-{profile}.properties 如application-prod.properties
通过在appliction.properties中设置spring.profiles.active=prod 来制定活动的Profile
springboot 初探 、基础及配置的更多相关文章
- SpringBoot初探之Swagger配置
Swagger是一个用于描述和测试restful接口的工具,只要在定义restful接口时增加一些类和方法的描述注解,通过很简单的配置就可以得到一个展示接口定义页面,也可以在页面上设置参数提交测试接口 ...
- SpringBoot基础学习(二) SpringBoot全局配置文件及配置文件属性值注入
全局配置文件 全局配置文件能够对一些默认配置值进行修改.SpringBoot 使用一个名为 application.properties 或者 application.yaml的文件作为全局配置文件, ...
- springboot情操陶冶-web配置(九)
承接前文springboot情操陶冶-web配置(八),本文在前文的基础上深入了解下WebSecurity类的运作逻辑 WebSecurityConfigurerAdapter 在剖析WebSecur ...
- springboot情操陶冶-web配置(四)
承接前文springboot情操陶冶-web配置(三),本文将在DispatcherServlet应用的基础上谈下websocket的使用 websocket websocket的简单了解可见维基百科 ...
- springboot情操陶冶-web配置(三)
承接前文springboot情操陶冶-web配置(二),本文将在前文的基础上分析下mvc的相关应用 MVC简单例子 直接编写一个Controller层的代码,返回格式为json package com ...
- SpringBoot入门基础
目录 SpringBoot入门 (一) HelloWorld. 2 一 什么是springboot 1 二 入门实例... 1 SpringBoot入门 (二) 属性文件读取... 16 一 自定义属 ...
- Springboot学习03-SpringMVC自动配置
Springboot学习03-SpringMVC自动配置 前言 在SpringBoot官网对于SpringMVCde 自动配置介绍 1-原文介绍如下: Spring MVC Auto-configur ...
- 【玩转SpringBoot】给自动配置来个整体大揭秘
上一篇文章中提到的条件注解,只是自动配置整体解决方案中的一个环节而已,可以说是管中窥豹. 本文就逐步擦除迷雾,让整体浮现出来,这样就会有一个宏观的认识. 除了写代码之外,还能干点什么? 提到“配置”这 ...
- 【SpringBoot】SpringBoot的基础,全面理解bean的生命周期
前言 前段时间直接上手使用springboot开发了一个数据平台的后台部分,但是自身对于springboot的原理和过程还不是很清晰,所以反过来学习下springboot的基础. 大家都知道sprin ...
- SpringBoot之基础入门-专题一
SpringBoot之基础入门-专题一 一.Spring介绍 1.1.SpringBoot简介 在初次学习Spring整合各个第三方框架构建项目的时候,往往会有一大堆的XML文件的配置,众多的dtd或 ...
随机推荐
- SetWindowsHookEx失败
使用下面代码hook鼠标 res = SetWindowsHookEx(WH_MOUSE_LL, _mouseHookProcedure, Marshal.GetHINSTANCE(System.Re ...
- EDM杂谈:第一个屏幕的定义和特点
在EDM营销中,经常会碰到第一个屏幕这个概念.这是什么意思呢?博主跟大家介绍一下. 图一:博文配图 这个主要是指用户在打开邮件时不需要滚动屏幕就可以看到的邮件内容.因为用户第一眼就可以看到,因此这部分 ...
- Vue知识整理15:组件注册
采用局部注册组件: 将代码放在vue的一个实例中,而不是单列申明.
- WPF DevExpress Chart控件 界面绑定数据源,不通过C#代码进行绑定
<Grid x:Name="myGrid" Loaded="Grid_Loaded" DataContext="{Binding PartOne ...
- kafka 消费者拉取消息
本文只跟踪消费者拉取消息的流程.对于 java 客户端, kafka 的生产者和消费者复用同一个网络 io 类 NetworkClient. 入口在 KafkaConsumer#pollOnce 中, ...
- 阶段3 1.Mybatis_09.Mybatis的多表操作_7 mybatis多对多准备角色表的实体类和映射配置
创建Role表和user_role表 DROP TABLE IF EXISTS `role`; CREATE TABLE `role` ( `ID` int(11) NOT NULL COMMENT ...
- robotframework之常用系统关键字
常用系统关键字此处做些记录,后续根据实际应用陆续补充 1.变量声明 ${a} Set Variable hello 2.表单嵌套 Select Frame Xpath=//* [@] Unselect ...
- Python3 多线程编程 threading模块
性能自动化测试除了用jmeter还可以用python threading模块做 一.threading模块定义 Python 2.4中包含的较新的线程模块为线程提供了更强大的高级支持. 线程模块公开线 ...
- 如何将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中
cat /etc/issue|tr '[:lower:]' [:upper:] >> /tmp/issue.out
- C++中的字符串类
1,本文分析 C++ 中的字符串,C 语言中的字符串利用的是 C 语言中的字符数组, 在 C 语言中没有真正意义上的字符串,利用了字符数组表示了字符串,最初设 计 C 语言仅仅是为了开发 Unix ...