spring boot1 到 spring boot2的配置变化很大,迁移项目到spring boot2过程中发现以下变化

  1.java 的 redis 配置添加了属性jedis

    旧版 

    spring:
      redis:
        timeout: 300000
        pool.max-active: 20
        pool.max-idle: 5
        pool.max-wait: -1
        pool.min-idle: 0

    新版

    spring:
      redis:
        timeout: 300000

        jedis:
          pool.max-active: 20
          pool.max-idle: 5
          pool.max-wait: -1
          pool.min-idle: 0

  2.tomcat 原来的线程池@bean配置不再支持,但yaml或properties配置没变

    yaml配置:

   server:
    tomcat:
    uri-encoding: utf-8
    max-threads: 1000
    max-connections: 900
    min-spare-threads: 100
   版本1的@bean配置:

    @Configuration
    public class TomcatConfig {

    @Bean
    public EmbeddedServletContainerFactory containerFactory() {
      TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory();
      factory.addConnectorCustomizers((connector) -> {
        Http11NioProtocol protocol = (Http11NioProtocol)connector.getProtocolHandler();
        protocol.setMaxConnections(1000);
        protocol.setMaxThreads(1000);
        protocol.setMinSpareThreads(100);
      });
      return factory;
      }

    }

  3.项目访问路径配置,版本2新加了servlet属性
  旧版:
  server:
   port: 8089
  context-path: /brieftkheal
  servlet-path: /
  新版:
  server:
    port: 8089
    servlet:
     context-path: /brieftkheal
     path: /
  4.实体类配置参数的prefix在新版本不让出现驼峰式命名,而是用‘-’分割开,如:
  旧版:
  @Component
  @ConfigurationProperties(prefix = "ipPhone")
  public class IpPhoneConfigProperties {
  private String url;
  private String id;
  private String key;
  private String pensionNumber;
   private Status status;
  private String ip1;
  private String ip2;
  private String eButlerPhoneWSUrl;
   。。。。。。
   public static class Status{
   private String success;
   private String noUser;
   private String noBalance;
   private String unknown;
     。。。。。。
   }
  }
  ipPhone:
   url:
   id:
   key:
  pensionNumber:
  ip1:
  ip2:
   eButlerPhoneWSUrl:
  status:
   success: 0
   noUser: 4
   noBalance: 16
   unknown: 999
  新版:
  @Component
  @ConfigurationProperties(prefix = "ip-phone")
  public class IpPhoneConfigProperties {
  private String url;
  private String id;
  private String key;
  private String pensionNumber;
   private Status status;
  private String ip1;
  private String ip2;
  private String eButlerPhoneWSUrl;
   。。。。。。
   public static class Status{
   private String success;
   private String noUser;
   private String noBalance;
   private String unknown;
     。。。。。。
   }
  }
  ip-phone:
   url:
   id:
   key:
  pensionNumber:
  ip1:
  ip2:
   eButlerPhoneWSUrl:
  status:
   success: 0
   noUser: 4
   noBalance: 16
   unknown: 999
  5.拦截器HandlerInterceptor 在2.0.0版本中默认拦截静态资源Resource
HandlerMethod,跳过静态资源才走
HandlerMethod对象的拦截,如果用swagger做接口api,需要加判断
if(o instanceof HandlerMethod)
  6.spirngboot2.0版本全面支持java8,jpa的部分方法返回类型由原来的T变成了Optional<T>,如findById,findOne等方法,如要获取实体类T,用optional.get()方法
  7.RedisCacheManager类的配置变了,我目前没有找到配置方法,望指教
  8.spring文件上传配置有变化
  1.x版本:
  spring:

    http:
      multipart:
        max-file-size: 4MB
        max-request-size: 150MB

    2.x版本:

    spring: 

    servlet:
     multipart:
       max-file-size: 4MB
      max-request-size: 150MB
 
好了,目前就发现这些,欢迎补充并指出不足

 

spring boot 1.x.x 到 spring boot 2.x.x 的那些变化的更多相关文章

  1. [Spring Boot 系列] 集成maven和Spring boot的profile功能

    由于项目的需要, 今天给spirng boot项目添加了profile功能.再网上搜索了一圈,也没有找到满意的参考资料,其实配置并不难,就是没有一个one stop(一站式)讲解的地方,所以有了写这篇 ...

  2. spring boot系列01--快速构建spring boot项目

    最近的项目用spring boot 框架 借此学习了一下 这里做一下总结记录 非常便利的一个框架 它的优缺点我就不在这背书了 想了解的可以自行度娘谷歌 说一下要写什么吧 其实还真不是很清楚,只是想记录 ...

  3. Spring Boot系列(一) Spring Boot介绍和基础POM文件

    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过 ...

  4. Spring Boot 2.0(二):Spring Boot 2.0尝鲜-动态 Banner

    Spring Boot 2.0 提供了很多新特性,其中就有一个小彩蛋:动态 Banner,今天我们就先拿这个来尝尝鲜. 配置依赖 使用 Spring Boot 2.0 首先需要将项目依赖包替换为刚刚发 ...

  5. Spring Boot 2.0(三):Spring Boot 开源软件都有哪些?

    2016年 Spring Boot 还没有被广泛使用,在网上查找相关开源软件的时候没有发现几个,到了现在经过2年的发展,很多互联网公司已经将 Spring Boot 搬上了生产,而使用 Spring ...

  6. 【转】Spring Boot 构建应用——快速构建 Spring Boot 应用

    Spring Boot 简化了 Spring 应用开发,不需要配置就能运行 Spring 应用,Spring Boot 的自动配置是通过 Spring 4.x 的条件注解 @Conditional 来 ...

  7. Spring Boot 2.0(八):Spring Boot 集成 Memcached

    Memcached 介绍 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站 ...

  8. Quick Guide to Microservices with Spring Boot 2.0, Eureka and Spring Cloud

    https://piotrminkowski.wordpress.com/2018/04/26/quick-guide-to-microservices-with-spring-boot-2-0-eu ...

  9. Spring Boot初识(3)- Spring Boot整合Swagger

    一.本文介绍 如果Web项目是完全前后端分离的话(我认为现在完全前后端分离已经是趋势了)一般前端和后端交互都是通过接口的,对接口入参和出参描述的文档就是Mock文档.随着接口数量的增多和参数的个数增加 ...

  10. spring boot (2):spring boot 打包tomcat、tomcat 部署多个项目、服务器部署项目SSL 设置(阿里云)

    一.spring boot 内置tomcat配置https: 关于自签名证书可以看下上一篇 spring boot1 更详细的可以看转载 https://www.jianshu.com/p/8d4ab ...

随机推荐

  1. HighCharts之2D带Label的折线图

    HighCharts之2D带Label的折线图 1.HighCharts之2D带Label的折线图源码 LineLabel.html: <!DOCTYPE html> <html&g ...

  2. Unhandled event loop exception GC overhead limit exceeded

    1.错误描述 java.lang.OutOfMemoryError: GC overhead limit exceeded at java.util.zip.ZipFile.<init>( ...

  3. org.hibernate.engine.jndi.JndiException:Error parsing JNDI name[foo]

    1.错误描述 WARN:HHH00027:Could not bind factory to JNDI org.hibernate.engine.jndi.JndiException:Error pa ...

  4. 物联网框架ServerSuperIO在.NetCore实现跨平台的实践路线

    正所谓天下大势,不跟风不行.你不跨平台,很low嘛.java说:你们能跨嘛,跨给我看看.C#说:不要强人所难嘛.java说:能部署在云上吗?docker?微服务?C#说:不要强人所难嘛.java说:你 ...

  5. JVM 调优系列之图解垃圾回收

    摘要: jvm必知系列,总结一些常见jvm回收机制,方便查阅 对于调优之前,我们必须要了解其运行原理,java 的垃圾收集Garbage Collection 通常被称为"GC", ...

  6. webpack学习(二):先写几个webpack基础demo

    一.先写一个简单demo1 1-1安装好webpack后创建这样一个目录: 1-2:向src各文件和dist/index.html文件写入内容: <!DOCTYPE html> <h ...

  7. 在实训时做的项目出现的ajax json数据传送的问题

    json数据在前后端数据交互的时候非常常见,但是大部分人对json都么有系统的学习过,所以就会出现一些很简单的问题却要非很大劲去解决. 在用json传递数据的时候属性必须用双引号括住,一般如果在进行字 ...

  8. Android继承AppCompatActivity实现全屏设置

    转载 2016年05月25日 13:20:25 标签: android / style / android studio / 继承 4839 Android studio创建新项目后Activity默 ...

  9. MySQL数据库索引简介

    一.索引的含义和特点     索引是一个单独的.存储在磁盘上的数据库结构,他们包含着对数据表里所有记录的引用指针.使用索引用于快速找出某个或多个列中有一特点值的行,所用MySQL列类型都可以被索引,对 ...

  10. Golang的CSP很酷?其实.NET也可以轻松完成

    说起Golang(后面统称为Go),就想到他的高并发特性,在深入一些就是 Goroutine.在大家被它优雅的语法和简洁的代码实现的高并发程序所折服时,其实C#/.NET也可以很容易的做到.今天我们来 ...