本文已被 https://yourbatman.cn收录; 女娲Knife-Initializr工程可公开访问啦;程序员专用网盘 https://wangpan.yourbatman.cn;技术专栏源代码大本营: https://github.com/yourbatman/tech-column-learning;公号后台回复“ 专栏列表”获取全部小而美的 原创技术专栏
你好,这里是Java方向盘,我是方向盘(YourBatman),坐稳扶好,开始发车。
Title | Link |
---|---|
所属专栏 | 【方向盘】-IntelliJ IDEA |
源代码 | https://github.com/yourbatman/FXP-java-ee |
程序员专用网盘公益上线啦,注册送1G超小容量,帮你实践做减法 | https://wangpan.yourbatman.cn |
Java开发软件包(Mac) | https://wangpan.yourbatman.cn/s/rEH0 提取码:javakit |
女娲工程 | http://152.136.106.14:8761 |
版本约定 | [Mac OS 12.5],[IntelliJ IDEA 2022.2] |
📚前言
它来了,它又来了。新版IDEA如约而至:2022年7月26日IntelliJ IDEA 2022.2正式发布。吃肉之前,可先把这之前系列的汤喝了,每篇都很顶哦:
- IntelliJ IDEA 2022.2正式发布,支持Spring Boot 3和Spring 6
- IntelliJ IDEA 2022.1正式发布,我把Maven Helper卸载了
- IntelliJ IDEA 2020.3正式发布,年度最后一个版本很讲武德
- IntelliJ IDEA 2020.2正式发布,诸多亮点总有几款能助你提效
- IntelliJ IDEA 2020.1正式发布,你要的Almost都在这!
- IntelliJ IDEA 2019.3正式发布,给我们带来哪些新特性?
- IDEA命令行缩短器助你解决此问题:Command line is too long. Shorten command line
诚然,我特别喜欢软件追新,每次macOS、Spring Boot、Spring Framework、IntelliJ IDEA发布大、中型版本,我本人都第一时间升级,然后使用几天后写篇文章介绍体验,分享给大家。
当然,越到后面可能觉得越写不动,自己升级归升级,分享出来就没那么多精力
不得不说,每次看到新的启动图就焕然一新之感,就是这么喜新厌旧:
弱弱评论一句,本启动图相较于上个版本(2022.1)变化挺小,设计师偷懒?
✍正文
官网对本次更新的概要性总结:IntelliJ IDEA 2022.2 为远程开发功能带来了多项质量改进,使其更美观、更稳定。 从 v2022.2 开始,IntelliJ IDEA 使用 JetBrains Runtime 17,后者可以从多方面增强 IDE 体验和性能。 IntelliJ IDEA Ultimate 添加了对 Spring 6 和 Spring Boot 3 功能的支持,也为多个其他框架引入了更新。 新版本还具有多项值得注意的升级和改进。
🌈what’s new(新特性)
老规矩,将我们关心的功能一一枚举。
🚀支持Spring 6和Spring Boot 3
Spring Boot 3已来到M4版本,举例正式版发布仅4个月左右。本次大版本号的升级,改变主要总结为两句话:
- 功能与Spring Boot 2.x(当然指的最新版2.x)基本保持不变
依赖大幅升级(阻断式升级)
- 最低要求Java 17
- 最低要求Spring Framework 6
- Maven最低要求3.5.x,Gradle最低要求7.3.x
- 彻底启用Java EE,改用最低依赖Jakarta EE 9(关于Jakarta EE,这篇值得一读:【方向盘】认为:开发者已无理由再用Java EE)
- 删除一些依赖项,如:Apache ActiveMQ、Atomikos、EhCache 2、HazelCast 3、Jersey等等
既然Spring Boot 3并没有显著的功能变化,那这次新版IDEA指的“支持Spring 6和Spring Boot 3”什么意思呢?先来看官网的解释:支持新的@AutoConfiguration类和@ConfigurationProperties类,涵盖新的构造函数绑定语法,无需显示@ConstructorBinding
🚩新的@AutoConfiguration
真相是@AutoConfiguration
是Spring Boot 2.7.x新增的注解:
在我这篇文章有详细说明:【方向盘】Spring Boot 2.7.0正式发布,弃用OkHttp 3、弃用spring.factories机制。还记得我这这篇文章里的语言吗?有截图为证哦:
这不,让我将IDEA升级到2022.2后,支持鼠标点击跳转了:
🚩无需显示标注@ConstructorBinding
这是Spring Boot 3.0之前:
Spring Boot 3.0版本:此注解只允许标注在构造器,不能再标注在类上了
多说一嘴:@ConstructorBinding注解和@Component(及派生注解)不能一起使用。只能通过@EnableConfigurationProperties(Xxx.class)启用。其中原因,有点Spring Boot基础的同学应该不难解释吧,评论区秀一秀?
在老版本的IDEA中若没有标注@ConstructorBinding
会飘红(但运行时不会有问题),升级到新版IDEA后,就清爽多了。
🚀 JBR 11升级到JBR 17
JBR:JetBrains Runtime。从此版本起,依赖Java 17,从而IDE的性能显著提升。同时,得益于苹果公开的Metal API
,macOS上的渲染能力进一步得到提升。
什么是Metal API?它是Apple平台提供低开销 API、丰富的着色语言、图形和计算之间的紧密集成以及无与伦比的 GPU分析和调试 工具套件,为 Apple平台上的硬件加速图形提供支持
用mac的老铁,不用犹豫了,升吧
🚀 运行当前文件
这个功能还是蛮香的,对效率提升有帮助。
之前运行/启动程序一般使用“运行上一次”的快捷键(或者鼠标点击启动按钮),但这种方式有个弊端:当切换文件想运行一个另一文件里的新入口时,这时就不得不使用到鼠标进行入口定位了(当然也有运行当前file的快捷键)。
现在,不用了!新版本IDEA支持自动定位(如上图,选中Current File):在当前文件内运行,就会自动帮你定位到当前文件的main方法入口,跟家方便了。
🚀 针对Java语言更好的代码检查和自动补全
这个特性其实不用特别的举例,在使用过程中慢慢发现就好。不过个人有个建议或许你可参考:优秀的程序员追求代码的质量,从敬畏警告开始。
Tips:建议在IDEA开启sonar实时检查,它会教你做人(不对,教你写代码)
🚀 更强的性能分析器
这个功能在本系列之前文章中有过详细介绍,这里就不再赘述了。
PS:此功能从实验性走到现在正式发布,已值得信赖,可以用来做性能分析用。在本地使用,非常高效
它不仅仅支持Java语言,Kotlin、Scala都是可以分析的~
🚀 其它
- 对最新的Kotlin 1.7.0新功能的支持
- 改进IDE对Kotlin的性能(含代码高亮、补全、查找等)
- 对Scala 3支持更好
- 支持Groovy 4语法高亮
- 支持Spring 6中新声明式 HTTP 客户端
- 支持Spring Cloud Gateway路由的 URL 补全和导航
- 更好的支持Spring Shell
- JSON、YAML 和 .properties字符串值中若是URL可以点击了
- 改进对Bean Validation的支持:更好的提示、补全
- 支持最新的Jakarta Persistence 3.1
- 提供对Vue 3、Angular、TypeScript 4.7更好的支持
✍总结
本次IDEA中型版本更新,最吸引我的是:更流畅,它变快了,也变强了。同时支持Spring Boot 3和Spring 6也让能助我更好的体验新特性。
升级建议:单凭它变得更流畅这一点,mac用户无脑升就对了。
PS:windows用户虽然没有Metal API,但理论上流畅度上也有所提升(毕竟切JBR 17了嘛)
推荐阅读
- 【方向盘】工具提效:Sublime Text 4的常用快捷键合集
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(Git&Other&完结篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(Live Template&Postfix Completion篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(重构篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(代码补全篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(运行/调试篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(视窗、选择篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(导航篇)
- 【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(操作系统、终端篇)
我是方向盘(YourBatman):前25年不会写Hallo World、早已毕业的大龄程序员。高中时期《梦幻西游》骨灰玩家,网瘾失足、清考、延期毕业、房产中介、保险销售、送外卖...是我不可抹灭的黑标签
- 🎓2013.07 清考、毕业答辩3次未通过、延期毕业
- 🏷2013.08-2014.07 宁夏中介公司卖二手房1年,毕业后第1份工作
- ️️🏷2014.07-2015.05 荆州/武汉,泰康人寿卖保险3月、饿了么送外卖2月,还有炸鸡排、直销等第2345份工作
- 🏷2015.08 开始从事Java开发,闯过外包,呆过大厂!擅长抽象思维,任基础架构团队负责人
- 🏷2021.08 因“双减政策”失业!历经9面,终获美团外卖L8的offer
- 🙅🏻♀️Java架构师、Spring开源贡献者、CSDN博客之星年度Top 10、领域建模专家、写作大赛1/2届评委
- 📚高质量代码、规范践行者;DDD领域驱动深度实践;即将出版书籍
《Spring奇淫巧技》
序号 | 专栏名称 | 简介 |
---|---|---|
01 | 【方向盘】-程序人生 | 程序人生,人生程序 |
02 | 【方向盘】-资讯/新特性 | IDEA、JDK、Spring技术栈......新特性 |
03 | 【方向盘】-IntelliJ IDEA | 熟练使用IDEA就相当拥有物理外挂,助你高效编码 |
04 | 【方向盘】-Bean Validation | 熟练掌握数据校验,减少90%的垃圾代码 |
05 | 【方向盘】-日期时间 | 帮你解决JDK Date、JSR 310日期/其实 的一切问题 |
06 | 【方向盘】-Spring类型转换 | Spring类型转换-框架设计的基石 |
07 | 【方向盘】-Spring static | static关键字在Spring里的应用 |
08 | 【方向盘】-Cors跨域 | 关于跨域请求问题,本专栏足矣 |
09 | 【方向盘】-Jackson | Almost Maybe是最好的Jackson专栏 |
10 | 【方向盘】-Spring配置类 | 专讲@Configuration配置类,你懂的 |
11 | 【方向盘】-Spring技术栈 | 暂无所属小分类的,Spring技术栈大分类 |
12 | 【方向盘】-JDK | 暂无所属小分类的,JDK技术栈大分类 |
13 | 【方向盘】-Servlet | Servlet规范、Web相关内容专题 |
14 | 【方向盘】-Java EE | 从Java EE到Jakarta EE,30年弹指一挥间 |
15 | 【方向盘】-工具/提效 | 开发工具、软件工具,目标是提效 |
16 | 【方向盘】-Spring技术栈新特性 | Spring Framework、Spring Boot、Spring Cloud、Spring其它技术 |
17 | 【方向盘】-基本功 | 每个Javaer,都需要有扎实的基本功 |
... | ... | ... |
99 | 源代码库 | 大多数专栏均配有源代码,都在这里 |