New progress in native Wayland support for OpenJDK

OpenJDK/Java has made progress in implementing native “pure” Wayland toolkit integration that does not rely on X.Org/X11 or XWayland to render Java GUI applications. Developer Alexey Ushakov has updated the OpenJDK Wiki this week to outline the latest progress in getting Wayland support for OpenJDK on Linux, a further refinement to the mature X11 support. This new toolkit support continues to be implemented from scratch and is currently being developed through Java’s Wakefield repository and the “pure_wl_toolkit” branch.

Making Java Agent work better on Dragonwell

Background Java Agent technology can dynamically modify Java application behavior without reworking the code. It is because of these features that many middleware teams, cloud vendor teams, and open source products, started using Java Agent technology to provide some basic capabilities, such as Apache Skywalking, OpenTelemetry all provide Java Agent. Earlier, middleware teams provided capabilities through SDKs (e.g., observable, microservice governance capabilities, etc.); however, each time middleware teams added new features and fixed defects, they needed each business party to update the SDK version and re-release it.

Introduction to the new features of Java 19

Java 19 Officially released on September 20, 2022, Java 19 is not a long term support release until March 2023 when it will be replaced by JDK 20, this update brings a total of 7 new features. 1 2 3 4 5 The update brings seven new features. ➜ bin . /java -version openjdk version "19" 2022-09-20 OpenJDK Runtime Environment (build 19+36-2238) OpenJDK 64-Bit Server VM (build 19+36-2238, mixed mode, sharing) OpenJDK Java 19 download: https://jdk.

Jakarta EE 10 Released, Opening the Era of Cloud-Native Java

The Eclipse Foundation has released the Jakarta EE 10 platform, Web Profile and the new Core Profile specification. Jakarta EE 10 introduces features for building modern, simplified and lightweight cloud-native Java applications. According to Mike Milinkovich, Executive Director of the Eclipse Foundation This release is a “big release” that is firmly embedded in Jakarta EE in the modern era of microservices and containers. The release of Jakarta EE 10 reflects the work of the global community of contributors, and with this release it now brings key innovations to the cloud-native era that are It is critical to the future of our industry.

Java19 Official GA! See how virtual threads can dramatically increase system throughput

Java19 was released yesterday, bringing a new feature that Java developers have been waiting for - virtual threads. Before Java had this new feature, Golang’s Goroutine had been popular for a long time, and it was a big hit in the field of concurrent programming. With the rapid development and promotion of Golang, it seems that coroutine has become one of the necessary features of the best languages in the world.

JDK 19 / Java 19 Official GA

JDK 19 / Java 19 Official GA JDK 19 / Java 19 has been officially released. The new release contains a total of 7 new JEPs. 405: Record Patterns (Preview) 422: Linux/RISC-V Port 424: Foreign Function & Memory API (Preview) 425: Virtual Threads (Preview) 426: Vector API (Fourth Incubator) 427: Pattern Matching for switch (Third Preview) 428: Structured Concurrency (Incubator) 405: Record Patterns goes to preview stage Record Patterns deconstructs the values of record, and Record patterns and Type patterns enable powerful, declarative, composable forms of data navigation and processing through nesting.

Java 19 officially released, improve multi-threaded, concurrent programming difficulties

Java 19 was officially released a few minutes ago, a non-LTS (long term support) release with seven features including structured concurrency, record mode, a preview of external functions and memory APIs, and support for the open source Linux/RISC-V instruction set architecture (ISA). New Features JEP 405 Record Patterns (preview) JEP 422 Linux/RISC-V Port JEP 424 Foreign Function & Memory API (preview) JEP 425 Virtual Threads (Preview) JEP 426 Vector API (4th incubation)

Microsoft is fully embracing Java!

Although Microsoft has been using the Java language in many of its products, a recent announcement on its website, “Microsoft is committed to the success of Java developers”, has officially sounded the call for Microsoft to fully embrace Java. NET, TypeScript, Visual BASIC, JScript and so on, why did Microsoft go to the trouble of going deeper into Java? Microsoft’s Latest Moves for Java In this announcement, Julia Liuson, President of Microsoft Developer Division, said, “As a company, we are committed to making Java developers as efficient and productive as possible.

Solution for JWT Token auto-renewal

Preface In a front-end/back-end development model, the back-end service issues a jwt token to the user after the front-end user logs in successfully. Each subsequent request will put this token in the request header and pass it to the backend service, which will have a filter to intercept the token and check whether the token is expired, and if the token is expired, the frontend will jump to the login page to log in again.

JavaFX 19 Released

JavaFX 19 is now released, JavaFX 19 requires JDK 11 or higher. This release has enhanced video and CSS features and fixed some touch screen bugs. Additional JavaFX 19 features: Faster creation of observable ArrayList in FXCollections, allowing users to update the list of available printers without restarting the application. Other updates. Added CSS pseudo-classes :focus-visible and :focus-within to support visual focus indication and nested focus visual effects, respectively. A modal behavior fix has been implemented for Stage on Linux platforms.

Best Practices for Java8 Optional

As we all know, Java 8 has a new class - Optional, which is mainly used to solve the common NullPointerException problem in the program. But in the actual development process many people are using Optional in a half-assed way, something like if (userOpt.isPresent()){...} Such code is everywhere. I would prefer to see an honest null judgment, but forcing Optional adds complexity to the code. The article I’m sharing with you today is some of the Best Practise and some of the Bad Practice of Java Optional, for your reference.

How to easily use the factory design pattern in Java

Factory Design Pattern or Factory Method Design Pattern. It is a widely used and easy to understand design pattern. It is an effortless but effective way to hide the complexity of object creation. That’s why it belongs to the creation pattern category. Prerequisites for understanding the Factory Design Pattern Before you can understand what the Factory Design Pattern is, you need to know what superclasses superclasses and subclasses subclasses are. If you already know, you can skip to this section

The latest Java 19 two major features revealed

JDK 18/Java 18 was released last month, and JDK 19 is scheduled to be released in September this year, so before many developers can use Java 18, two of the latest target features about Java 19 have been revealed. There are two official features that will be released in the next version. One is the Vector API, and the other is the porting of the JDK to RISC-V. The former Vector API is an API that expresses vector computation and will be incubated for the fourth time in the next Java release; the latter proposed feature is the porting of the JDK to the open source Linux/RISC-V instruction set architecture (ISA).

10 Best Practices for Building Java Images

Do you want to build a Java application and run it in Docker? Do you know what the best practices are for building Java containers with Docker? In the following quick checklist, I’ll provide you with best practices for building production-grade Java containers designed to optimize and secure Docker images to be put into production environments. Building a simple Java container image Let’s start with a simple Dockerfile. When building a Java container, we often have something like the following.

Zero-copy technology and its application in Java

1 Preface Some time ago, I was involved in locating a problem with Tomcat that involved a sendfile system call. I suddenly thought of some of my previous experience with Java, and knew that there was a lot of open source software in the Java space that applied zero-copy to improve its performance, so I came up with this article. Look at these familiar software, have you ever understood the technical points behind their application:

Java Valhalla Project

Introduction In this article, we’ll cover the Valhalla project - the reasons for its history, the current state of development, and what it has brought to everyday Java developers since its release. Motivation and reasons. The Valhalla Project Brian Goetz, Oracle’s Java language architect, said in a talk that one of the main motivations for the Valhalla Project was the desire to adapt the Java language and runtime to modern hardware.

A few suggestions to improve the performance of regular expressions

Why is regular expression efficiency important? While well-written regular expressions can be very effective, poorly written regular expressions can take a long time to run and can significantly slow down a system. It is quite possible to write a regular expression that takes hours or days to complete, and it is even possible to write a regular expression that will not complete within the lifetime of the universe because it runs against a medium-sized string.

Java7 End of Life Cycle

Java SE 7, a nearly 11-year-old version of the Java standard, is coming to the end of its life cycle and Oracle will officially discontinue extended support for it at the end of July 2022. With official extension support is discontinued, Java 7 will enter a Sustaining Support model as defined by the Oracle Lifetime Support Policy. Oracle will no longer provide patch updates, bug or security fixes, or feature implementations.

JDK 19 feature set freeze: Java 19 has only 7 new features

Introduction From the Overview page of JDK 19, it appears that JDK 19 is in the Rampdown Phase Two, the entire feature set has been frozen and no further changes will be made to the JEP. Java 19 has only 7 new features. 405: Record Patterns (Preview) Record Patterns 422: Linux/RISC-V Port Linux/RISC-V porting 424: Foreign Function & Memory API (Preview) External Function and Memory API 425: Virtual Threads (Preview) Virtual Threads 426: Vector API (Fourth Incubator) Vector API 427: Pattern Matching for switch (Third Preview) Switch Pattern Matching 428: Structured Concurrency (Incubator) Structured Concurrency The following is a short description of the new features.

Introduction to the Range function in Java

Introduction In Java, the Range method is available in both the IntStream and LongStream classes. In the IntStream class it helps to return the sequential value of the IntStream in the range of function parameters. In this method, startInclusive(inclusive) and endExclusive(exclusive) are the two parameters used with the incremental step which, as mentioned before, will include the start value and exclude the end value. In the case of LongStream, the only difference is the addition of the LongStream value.