把握行业变革关键节点,12 月 19 日 - 20 日,AICon北京站即将重磅启幕! 了解详情
写点什么

IntelliJ IDEA 2017.3: 增强对 Java EE 8、Spring Boot 和 JUnit 的支持

  • 2017-12-25
  • 本文字数:1509 字

    阅读完需:约 5 分钟

JetBrains 最近发布了IntelliJ IDEA 2017.3,带来了很多新特性,包括增强对Java、Java EE 8、Spring Boot、Kotlin 和Docker 的支持。2017.3 是在2017.2 之后三个月发布的,在正式发布之前,JetBrains 已经提供了最新的公共预览版,用于收集社区的问题反馈。下面列出一些主要的特性改进。

Java EE 8

与Java EE 8 相关的特性包括支持CDI 2.0 和Servlet 4.0 的HTTP/2。

CDI 2.0 方面的增强:

  • 异步事件——可以在已触发和已接收到的 CDI 异步事件之间跳转。

  • 动态 Bean——这是 CDI 的一个扩展,可以在注入点和注入的 Bean 之间跳转。

  • 支持新的内置接口,如 RequestContextController InterceptionFactory

  • 支持隐式(不需要 beans.xml 配置文件)和显式的 Bean 归档(archive)。

下面是 CDI 2.0 异步事件相关特性的演示。

Java Servlet 4.0 规范( JSR 369 )引入了服务器端推送特性,其中包括一个新的 PushBuilder 接口。如下图所示,最新发布的 IntelliJ IDEA 为 PushBuilder 提供了路径自动完成功能。

可配置的命令行参数缩短器

可配置的命令行参数缩短器(shortener)可以用于缩短类路径长度,这在项目的类路径长度超过了操作系统的命令行长度限制时是非常有用的。JetBrains 的市场经理 Zlata Kalyuzhnaya 讲述了在实现这一特性时遇到的挑战:

缩短类路径长度有多种方式,最开始,IntelliJ IDEA 将类路径写到文本文件里(这就需要一个额外的中介类加载器),但其他一些框架并不支持这么做,如 JMock。后来,IntelliJ IDEA 尝试了更加标准的做法,就是将类路径打包进 classpath.jar 里,可惜,某些框架仍然不支持这种方式。
我们无法预测哪一种方式可以适用于用户的应用程序,所以我们就把决定权交给了用户。2017.3 版本的 IntelliJ IDEA 为应用程序、JUnit 和 TestNG 提供了可配的命令行缩短器。

Spring Boot 和 Spring MVC

对 Spring Boot 和 Spring MVC 最新的支持包括了 Spring Boot 配置文件的语法高亮、Spring Boot 2.0 Actuator 端点、Spring Cloud 框架和 MVC Context 自动检测。如下图所示,在 Spring MVC 应用程序的相关文件之间跳转现在变得更加容易。

在运行 Spring Boot 2.0 的应用程序时,运行仪表盘区域为它们提供了相关的端点信息。

JUnit 5

IntelliJ IDEA 在 JUnit 5 正式发布之前就已支持它,而最新版本则提供了更多的特性,包括可选择性地将单元测试用例迁移至 JUnit 5。例如,假设有下列所示的 JUnit 4 单元测试用例:

复制代码
import org.junit.Assert;
import org.junit.Test;
public class FirstTest {
@Test
public void myFirstTest() {
Assert.assertEquals("one plus one should equal two", 2, 1 + 1);
}
}

通过在菜单中选择“Migrate to JUnit 5”,可以将这个测试用例转成 JUnit 5 的测试用例:

复制代码
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
public class FirstTest {
@Test
public void myFirstTest() {
Assertions.assertEquals(2, 1 + 1, "one plus one should equal two");
}
}

其他资源

IntelliJ iDEA 2017.2: Smarter, Neater, and Faster by InfoQ (August 27, 2017)

IntelliJ IDEA 2017.3 EAP: Configurable Command Line Shortener and More by Zlata Kalyuzhnaya(October 11, 2017)

What’s New in IntelliJ IDEA 2017.3 EAP for Java EE 8 by Zlata Kalyuzhnaya (October 17, 2017)

What’s New in IntelliJ IDEA 2017.3 for Spring Boot by Zlata Kalyuzhnaya (November 3, 2017)

IntelliJ IDEA 2017.3: JUnit Support by Zlata Kalyuzhnaya (November 15, 2017)

查看英文原文: IntelliJ IDEA 2017.3: Enhanced Support for Java EE 8, Spring Boot, and JUnit

2017-12-25 18:003286
用户头像

发布了 322 篇内容, 共 158.8 次阅读, 收获喜欢 148 次。

关注

评论

发布
暂无评论
发现更多内容

PTI中的SMEP模拟技术解析

qife122

内核安全 SMEP

配电 低压电工经验总结(9)

万里无云万里天

工业 工厂运维

配电 低压电工经验总结(10)

万里无云万里天

工业 工厂运维

✨ 梦精灵AI 2.0 应用大更新!管理中心+浏览器插件双升级,这些功能太香了!

龙正哲

提示词 提示词管理

如何安全使用localStorage保护敏感数据

qife122

数据加密 前端安全

基于跨话语重评分的包容性语音识别技术

qife122

语音识别 图神经网络

配电 高压电工经验总结(1)

万里无云万里天

工业 工厂运维

合规部署大语言模型:AI编排与可解释性

qife122

金融服务 合规

微软漏洞赏金计划丰收季:六大安全研究员获嘉奖

qife122

漏洞赏金 IE11漏洞

Gemma 3:单GPU/TPU可运行的最强开源模型

qife122

开源技术 AI模型

Java 18开发者新特性详解:简易Web服务器、代码片段标注与UTF-8默认编码

qife122

Java 新特性

一个普通文科生的AI创业之路丨2023-2025

阿星AI工作室

创业 AI 产品经理 经验之谈 超级个体

认证实验室实战演练 - 深入解析认证与授权漏洞

qife122

网络安全 渗透测试

释放美杜莎:快速可扩展的智能合约模糊测试技术

qife122

区块链 开源

配电 二次控制回路经验总结(2)

万里无云万里天

工业 工厂运维

Mac下Elasticsearch7.x安装及Springboot集成

程序员架构进阶

elasticsearch #架构 8月月更 检索引擎 RAG 框架

多租户模型推理成本追踪方案解析

qife122

人工智能 成本优化

配电 二次控制回路经验总结(3)

万里无云万里天

工业 工厂运维

AI编程实战|提示词工程-N-Shot学习与实践

Jxin

编程 AI 提示词 AI辅助编程

高效训练大规模图神经网络的创新方法

qife122

图神经网络 GPU加速

AI 编程实战|提示词工程-Reflexion反思机制学习与实践

Jxin

编程 AI 提示词 提示词工程 AI辅助编程

javax.security.auth.login.LoginException: Receive timed out

刘大猫

人工智能 数据挖掘 算法 数据分析 LoginException

基于YOLOv8的矿井内煤炭图像智能识别|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!

申公豹

人工智能

spaCy v2.3发布:新增5种语言模型与性能优化

qife122

自然语言处理 开源工具

配电 二次控制回路经验总结(1)

万里无云万里天

工业 工厂运维

AI 编程实战|提示词工程-COT&TOT学习与实践

Jxin

编程 AI 提示词 提示词工程 AI辅助编程

配电 低压电工经验总结(8)

万里无云万里天

工业 工厂运维

NotebookLM替代工具技术解析

qife122

AI工具 技术对比

从App Store高效获取iOS渗透测试所需的.ipa文件

qife122

ios安全 逆向工程

某中心发布云端浏览器工具AgentCore,赋能AI网页交互

qife122

人工智能 云计算

微软强化Windows 11防御文件链接攻击

qife122

Windows安全 权限提升

IntelliJ IDEA 2017.3: 增强对Java EE 8、Spring Boot和JUnit的支持_Java_Michael Redlich_InfoQ精选文章