SpringBoot--配置详解
SpringBoot使用了一个全局的配置文件application.properties,放在src/mian/resource目录下或者类路径的/config下。springboot的全局配置文件的作用是对一些默认配置的值进行修改
- spring.profiles.active=dev:指定因环境不同的配置文件
- server.port=8888:指定项目的端口号
- server.context-path=/xhy:指定项目的根路径
自定义属性
- application.properties提供自定义属性的支持,这样我们就可以吧一些常量配置在这里,然后直接要在使用的地方通过注解@value(value="${config.name}")取值(value注解可以取spring加载任意properties文件的key值)
自定义配置类
- 使用@value注解有时候比较笨重,spring提供一种强类型的bean来替代这种方式
@Configuration
@EnableConfigurationProperties(UserProperties.class)
public class MyConfiguration{ } @Component
@ConfigurationProperties(prefix = "spring.data.mongodb")
public class UserProperties {
private String host;
private int prot; }
spring.data.mongodb.host=192.168.1.1
spring.data.mongodb.port=1234
配置Filter、Servlet、Interceptor、Listener
- Filter可在application.java主启动类中添加如下代码
@Bean
public FilterRegistrationBean getEncodingFilter() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new CharacterEncodingFilter());
registration.setUrlPatterns(Collections.singletonList("*.json"));
registration.setName("encodingFilter");
Map<String, String> initParams = new HashMap<>();
initParams.put("encoding", "UTF-8");
registration.setInitParameters(initParams);
registration.setOrder(1);
return registration;
}
- Servlet可在application.java主启动类中添加如下代码(监听器类似这两个ServletListenerRegistrationBean)
@Bean
public ServletRegistrationBean getDispatcherServlet() {
Rw4SpringDispatchServlet servlet = new Rw4SpringDispatchServlet();
ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(servlet);
servletRegistrationBean.setLoadOnStartup(1);
Map<String, String> initParams = new HashMap<>();
initParams.put("contextConfigLocation", "classpath:spring/jsonDispatcher-servlet.xml");
servletRegistrationBean.setInitParameters(initParams);
servletRegistrationBean.setUrlMappings(Collections.singletonList("/"));
servletRegistrationBean.setName("jsonDispatcher");
servletRegistrationBean.setOrder(2);
return servletRegistrationBean;
}
- 过滤器和监听器,servlet的又一种配置方式
- 在主启动类上加上@ServletComponentScan注解(默认值为加载当前模块的包,如果想连同其它模块一起扫描,加上value="cn.com")表明开启servlet的注解
- 创建一个监听器,实现ServletContextListener接口,添加@WebListener注解
- 自定义一个filter,实现Filter接口,添加@WebFilter注解,Servlet添加@WebServlet注解
SpringBoot--配置详解的更多相关文章
- springboot配置详解
springboot配置详解 Author:SimpleWu properteis文件属性参考大全 springboot默认加载配置 SpringBoot使用两种全局的配置文件,全局配置文件可以对一些 ...
- SpringBoot | 第三章:springboot配置详解
基于springboot的约定优于配置的原则,在多数情况下,启动一个应用时,基本上无需做太多的配置,应用就能正常启动.但在大部分开发环境下,添加额外配置是无所避免的,比如自定义应用端口号(比较在机器比 ...
- 第二篇:SpringBoot配置详解
SpringBoot 是为了简化 Spring 应用的创建.运行.调试.部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖 ...
- SpringBoot—整合log4j2入门和log4j2.xml配置详解
关注微信公众号:CodingTechWork,一起学习进步. 引言 对于一个线上程序或者服务而言,重要的是要有日志输出,这样才能方便运维.而日志的输出需要有一定的规划,如日志命名.日志大小,日志分 ...
- SpringBoot @ConfigurationProperties详解
文章目录 简介 添加依赖关系 一个简单的例子 属性嵌套 @ConfigurationProperties和@Bean 属性验证 属性转换 自定义Converter SpringBoot @Config ...
- Log4j配置详解(转)
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- logback 常用配置详解<appender>
logback 常用配置详解 <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的 ...
- [转]阿里巴巴数据库连接池 druid配置详解
一.背景 java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池.数据库连接池有很多选择,c3p.dhcp.proxool等,druid作为一名后起之秀,凭借其出色 ...
- libCURL开源库在VS2010环境下编译安装,配置详解
libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...
- logback配置详解3<filter>
logback 常用配置详解(三) <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一.返回DENY ...
随机推荐
- HDU 5965 扫雷
扫雷游戏是晨晨和小璐特别喜欢的智力游戏,她俩最近沉迷其中无法自拔. 该游戏的界面是一个矩阵,矩阵中有些格子中有一个地雷,其余格子中没有地雷. 游戏中,格子可能处于己知和未知的状态.如果一个己知的格子中 ...
- hystrix实战总结;
HystrixCircuitBreaker 有三种状态 : 断路器默认是20个请求失败才打开短路器,可以进行配置: CLOSED :关闭 OPEN :打开 HALF_OPEN :半开 1.接口正确,接 ...
- 10款 Mac 经典原型设计开发软件推荐
在Mac上有大量强大的开发和设计工具,今天和大家推荐10款Mac上的经典原型设计开发工具,原型设计工具是开发者必备的一款工具,无论是网站开发还是移动APP开发,都需要在前期进行严格细致的原型设计,才能 ...
- bank_card.js
function init() { undefined = "undefined"; mkCClist(); } function ccchk(cdi) { output1 = & ...
- go 终端读写、文件读写
go 终端读写 操作终端相关文件句柄常量 os.Stdin:标准输入 os.Stdout:标准输出 os.Stderr:标准错误输出 示例: package main import ( "b ...
- sp_change_users_login 'Update_One', '用户名', '登录名';
每次从服务器上备份好数据库(Sql Server数据库),如果将备份数据库文件在本地恢复,总会产生用户权限的问题. 经过很多次的实验后,我发现有那么一条语句可以发挥作用,就是sp_change_use ...
- golang反射举例
反射就是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属性:并且能改变它的属性. package main import ( "f ...
- 【概括】C++11/14特性
c++11 c++14
- Git与GitHub学习笔记(一)如何删除github里面的文件夹?
按照以下步骤即可(本地删除) 1. git pull you git url2. git checkout 3. rm -r dirName4. git add --all5. git commit ...
- while循环、格式化输出、运算符和编码初识
while循环 1. while循环的结构 while 条件: 执行语句1 执行语句2 i = 0 while i < 10: print(i) i += 1 运行结果 0 1 2 3 4 5 ...