一、引言

由于去年公司发展需求,由我负责新框架的技术选型与初步搭建工作,
现在开始准备整理之前的资料,并尝试搭建个人项目,并逐步引入当下热门的框架与技术

二、版本推荐

2.1 Spring Boot版本推荐

Spring Boot 2.1使用Spring Framework 5.1
Spring Boot 2.1仍然与Java 8兼容,但现在也支持Java 11.我们有持续集成,可以针对最新的Java 11版本构建和测试Spring Boot

推荐版本:2.1.3.RELEASE

2.2 JDK版本推荐—JDK 1.9、10、11特性说明

2.2.1 JDK 1.9新特性

1.Java 平台级模块系统
2.Linking
3.JShell : 交互式 Java REPL
4.改进的 Javadoc
5.集合工厂方法
6.改进的 Stream API
7.私有接口方法
8.HTTP/2
9.多版本兼容 JAR

2.2.2 JDK 10新特性

1.var声明变量
JDK10 可以使用var作为局部变量类型推断标识符,此符号仅适用于局部变量,
增强for循环的索引,以及传统for循环的本地变量;它不能使用于方法形式参数,
构造函数形式参数,方法返回类型,字段,catch形式参数或任何其他类型的变量声明。
标识符var不是关键字;相反,它是一个保留的类型名称。这意味着var用作变量,
方法名或则包名称的代码不会受到影响;但var不能作为类或则接口的名字
(但这样命名是比较罕见的,因为他违反了通常的命名约定,类和接口首字母应该大写)。

2.移除javah

3.IO流大家族添加charset参数

4.其它
    将JDK多存储库合并为单存储库
    并行Full GC 的G1
    垃圾回收接口
    应用数据共享
    线程局部管控
    基于实验JAVA 的JIT 编译器
    备用内存设备上分配堆内存

2.2.3 JDK 11新特性与重要更新

重要更新:
JDK中不再包含JavaFX
不再提供JRE或Server JRE。仅提供JDK。用户可以使用jlink创建较小的自定义运行时
Z垃圾收集器,也称为ZGC,是一个可扩展的低延迟垃圾收集器(2019/08/28,暂时只支持Linux)

新特性:
1.HTTPClient转正
JDK9中便引入httpclient模块,但它在jdk.incubator.httpclient包下,在java11被标记为正式,改为java.net.http模块。

2.密码学方面的改进
    使用RFC 7748中描述的Curve25519和Curve448实现key agreement
    实现 RFC 7539的ChaCha20 and ChaCha20-Poly1305加密算法
    
3.java命令运行java文件
java Haha.java直接输出javac Haha.java &&java Haha的结果。

4.废弃Nashorn JavaScript引擎
Nashorn被废弃,GraalVM为推荐引擎。

5.更灵活的String

6.更方便的IO

推荐版本JDK8:JDK 8u191 (public release)
推荐版本JDK11:Java SE JDK 11.0.3

2.3 Spring Framework版本推荐

Spring Framework支持的JDK:
    Spring Framework 5.1.x:JDK 8-12
    Spring Framework 5.0.x:JDK 8-10
    Spring Framework 4.3.x:JDK 6-8

推荐版本:5.1.5.RELEASE

三、参考

Spring Boot官网

GitHub_Spring Framework5.0、5.1、5.2版本比较

搜狐_JDK 11优势列举

CSDN_Spring Boot依赖的Spring Framework以及兼容的JDK版本

CSDN_Spring Framework兼容的JDK版本

博客园_JDK和Spring Boot版本推荐

Spring Boot版本说明

Spring Framework各版本支持时间

Spring Boot版本清单

Spring Framework版本清单

JDK 11发行说明

OpenJDK_JDK版本清单

OSCHINA_Java SE 11.0.1(LTS) 、8u191 / Java SE 8u192 发布

四、最后

若有不足,敬请指正
虚心若愚,求知若渴

MO_or
25 声望75 粉丝

小菜鸟的成长地。