Spring Framework 6中的新功能和增强功能

2022-11-16 Spring

在2022年11月16日,Juergen Hoeller发布了消息,称 Spring Framework 6将正式发布。Spring 6 是一个重要的版本,距离 Spring 5 发布有四年多了。通过本文的介绍,我们一起来快速了解 Spring 6发行版中的那些令人兴奋的特性。



使用GraalVM原生映像彻底革新Java

2022-09-02 GraalVM

关键要点

  • GraalVM Native Image是一种提前编译技术,可生成本机平台可执行文件。
  • 本机可执行文件是容器和云部署的理想选择,因为它们体积小,启动速度非常快,而且需要的CPU和内存明显减少。
  • 在无分布甚至Scratch容器映像上部署本机可执行文件,以减小大小并提高安全性。
  • 通过配置文件引导的优化和G1垃圾收集器,使用GraalVM Native Image构建的本机可执行文件可以实现与JVM相当的峰值吞吐量。
  • GraalVM Native Image在Spring Boot、Micronaut、Quarkus、Gluon Substrate等领先Java框架的支持下获得了大量采用。
  • Java主导了企业应用。但在云中,Java比一些竞争对手更昂贵。本机编译使云中的Java更便宜:它创建的应用程序启动速度更快,内存使用更少。

JDK 19的7 个新特性

2022-08-02 JDK

JDK 19 功能集目前已经冻结,按照预期,在今年的9月份Java 19将会正式发布。带大家一起看下 JDK 19的这7 个冻结的新特性。


曾国藩学习心法

2022-07-29 Learning

在中国几千年历史中,出了两个半圣人:孔子、王阳明,还有半个是曾国藩。所谓圣人,即为立功、立德、立言,对圣人的定义被大多数认同是张载所说“为生民立命,为天地立心,为往圣继绝学,为万世开太平”。

曾国藩之成就,我认为同他的学习心法息息相关的。整理成文,与君共勉。


手柄与FPS游戏键鼠映射方法

2022-06-29 Game

本文介绍新买的手柄,在进行游戏前,如何做键位映射。本文涉及:

  • 手柄:乐视无线游戏手柄 尚酷版 LeWGP-201
  • 软件:x360ce、JoyToKey
  • 游戏:《使命召唤4》(Call of Duty 4: Modern Warfare)

云原生编译器——Java Cloud Compiler

2022-06-15 Java

Azul推出了一个新的云原生编译器——Java Cloud Compiler,它将Java JIT编译从本地系统卸载到弹性资源,降低运行应用程序所需的资源量,并缩短达到峰值性能的时间。



从Java 8升级到Java 11的注意事项

2022-04-19 Java

虽然Java最新版本已经发展到Java 18了,但市面上大部分的项目还在使用Java 8。由于从Java 8之后,Java API不一定向前兼容,因此很多人都对升级Java版本心存顾虑。Java 11是Java 8的下一个长期支持版本,毫无疑问Java 11比Java 8更加优秀。

本文介绍了将代码从 Java 8 转换到 Java 11用到的检查代码工具,还介绍了可能遇到的问题以及解决这些问题的建议。



Java下一代高并发技术——虚拟线程(Virtual Threads)

2022-04-12 Java

很多语言都有类似于“虚拟线程”的技术,比如Go、C#、Erlang、Lua等,他们称之为“协程”。 不管是虚拟线程还是协程,他们都是轻量级线程,其目的都是为了提高并发能力。 本节详细介绍Java平台的“虚拟线程”的技术——“JEP 425: Virtual Threads (Preview)”。






禁用GitHub的Dependabot

2022-03-03 GitHub

Github Dependabot是个好东西,它是GitHub的工具,可以帮助检测你的repo, 并且做一些工作保证你repo的安全性。

但有时,我也面临了已经收到太多Dependabot提示信息,对我造成了骚扰。于是我想要禁用Dependabot。











scrcpy实现Android手机投屏到PC电脑

2021-11-15 scrcpy Android

目前市面上有投屏器可以实现将Android手机画面投屏到显示器。本节介绍的是一种通过纯软件的方式,将Android手机投屏到PC电脑上,并且可以在PC上直接控制Android手机。这款开源软件就是scrcpy。



拥抱Arm服务器

2021-10-26 Arm

迄今为止,移动电话、物联网传感器及其他设备中已包含 1800 亿个基于 Arm 的处理器。如今,这项技术经过不断发展,已支持超大规模数据中心和云计算。基于 Arm 的处理器对于云客户极具吸引力,因为它们具备线性扩展能力、可预测的性能以及超高的核心密度和经济性。借助基于 Arm 的云计算,客户可以更加低成本地运行现有负载,构建具有卓越经济性和性能的新应用。


JUnit 4断言void方法

2021-10-26 JUnit

假设service.runTask是void方法,没有返回值。也不期望抛出异常,可以按下面的方法玩。

boolean result;
try {
    service.runTask(engineBatchVO);
    result = true;
} catch (ApplicationException ex) {
    result = false;
}

Assert.assertTrue(result);

JDK 17发布

2021-09-16 JDK Java

JDK 17已经于2021年3月16日如期发布。本文介绍JDK 17新特性。JDK 17于2021年9月14日正式发布(General-Availability Release)。JDK 17将是大多数供应商的长期支持(LMS)版本。上一个LTS版本是JDK 11。

本文总结了JDK 17发布的新特性。


Eclipse Memory Analyzer (MAT)的安装及使用

2021-09-15 Eclipse

Eclipse Memory Analyzer (MAT)是一个快速且功能丰富的Java堆分析器,可帮助您发现内存泄漏并减少内存消耗。

使用内存分析器分析具有数亿个对象的生产堆转储,快速计算对象的保留大小,查看谁在阻止垃圾收集器收集对象,运行报告以自动提取泄漏嫌疑。




Apache Parquet列式存储格式介绍

2021-08-03 Parquet

Apache Parquet是Hadoop生态系统中的任何项目都可以使用的列式存储格式。Parquet是语言和平台无关的。Parquet最初是由Twitter和Cloudera合作开发完成并开源,2015年5月从Apache的孵化器里毕业成为Apache顶级项目。




为什么需要TRIZ

2021-06-30 TRIZ

什么是TRIZ?TRIZ本质上是寻求问题、解决问题的方法论。特别是在发明、创新领域,TRIZ理论成功地揭示了创造发明的内在规律和原理,着力于澄清和强调系统中存在的矛盾,其目标是完全解决矛盾,获得最终的理想解。它不是采取折中或者妥协的做法,而且它是基于技术的发展演化规律研究整个设计与开发过程, 而不再是随机的行为。实践证明,运用TRIZ理论,可以加快人们创造发明的进程而且能得到高质量的创新产品。



Way Lau

Software Engineer and Full Stack Developer, now work and live in Shenzhen, China. Detail

Donate

See the list of Donors.