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 ...
随机推荐
- python爬虫获取图片
import re import os import urllib #根据给定的网址来获取网页详细信息,得到的html就是网页的源代码 def getHtml(url): page = urllib. ...
- position:fixed固定定位的用法
一.position:fixed:固定定位 1.实现某个元素在可视窗口的居中位置显示 1)给自身设置宽高: 2)给自身加position:fixed: 3)用margin向左移动自身宽度的一半,向上移 ...
- 如何修改const常量值
总结:这个跟计算机语言类别和编译器有关,本文是在linux环境下说明的. 分两种情况: 1. C语言: 2. C++语言: /*! * \Description: * \author scictor ...
- (基础 输入方法 栈)P1427 小鱼的数字游戏 洛谷
题目描述 小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字(长度不一定,以0结束,最多不超过100个,数字不超过2^32-1),记住了然后反着念出来(表示结束的数字0就不要念出来了).这对小鱼的 ...
- PO1068 Parencodings 模拟题
Parencodings Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 28860 Accepted: 16997 De ...
- 使用text-align:justify,让内容两端对齐,兼容IE及主流浏览器的方法
如果不喜欢看分析过程,可以跳到最后看最终兼容方案 史前方法: 以前实现两端对齐是这样的: <p class="box1">密 码</p> <p cl ...
- shell基础之bash
一直单单知道部署服务器等命令,shell语言还没有用心学习过,简单的学习下以供不时之需 .sh:bash脚本文件 很多时候需要多个命令来完成一项工作,而这个工作又常常是重复的,这个时候我们自然会想到将 ...
- opencv: 排序
opencv提供了排序函数: sort和sorIdx , 其中sortIdx可以获取排序后的序号,比较方便: sortIdx原型: C++: void sortIdx(InputArray src, ...
- JDBC工具类
package com.shundong.uitl; import java.sql.Connection; import java.sql.DriverManager; import java.sq ...
- jQuery_parent() parents() closest()区别
parent 是找当前元素的第一个父节点,不管匹不匹配都不继续往下找 parents 是找当前元素的所有父节点 closest 是找当前元素的所有父节点 ,直到找到第一个匹配的父节点 <%@ ...