This release’s JEPs range from new language features to improvements for core libraries to previews and incubators.
Questions, comments, kudos, critiques?
The JEPs delivered in Java 17 range from new language features to improvements for core libraries to previews and incubators.
They’ve been around since Java 7, but not everyone knows how to use the NIO.2 file I/O facilities.
Recent computer science graduate Jackson Roberts never took a single class in Java. That’s just wrong, he says.
Here’s what Java 17 has in common with Java 11 and Java 8.
What you need to know about code migration from the previous Long-Term-Support versions of the platform: Java 11 and Java 8
The JDK defaults for HotSpot are great, but sometimes you want to tinker.
A quarter century ago, Java’s platform independence offered a way to compete against Microsoft’s Windows platform.
Behavior-driven development is the next natural step from test-driven development.
How Java projects such as Loom, Panama, and Valhalla are laying the foundation for the future of the platform
A proposal to overcome the limitations of both monolith and microservices applications
How to use open source tools to keep tabs on enterprise applications
This open source tool generates the code for embedding parsers into Java applications.
There’s much more to a new Java release than the well-known JEPs.
It takes only a little hardware, and only a little software, to attach a single-board computer to a Java game.
How collaboration, mentorship, and (surprise!) deleting code can increase efficiency
Use these Java language improvements to make your code easier to write, read, and maintain.
Here’s how to break your most critical business systems—intentionally.
The friendly overview of containers and Docker that many Java developers have been looking for
Tell everyone about jdeprscan, jlink, jpackage, and Java Flight Recorder.
You’ll be amazed at how little code is needed to create a 2D arcade game.
One way to test a complex software system is to carefully break things and see what happens.
Java Management Service provides analytics on Java running in the cloud and on-premises.
The Spark framework might be the platform you need for building web applications that run in the JVM.
From Java 7 to Java 16 and beyond, this technical journal has been a resource by and for the Java community.
Running Java in the cloud helps lower costs, speed up operations, and simplify the deployment.
For years, some important articles have not been available on the magazine website. They are now.
Learn how to use lambda expressions to greatly reduce code clutter.
Bloch’s Builder pattern can be thought of as a workaround for a missing language feature.
Depending on the requirements, you can do well with Helidon, Piranha, or Hammock.
How Native Image’s G1 GC garbage collector and profile-guided optimizations can help build fast, efficient, easy-to-distribute binaries for Java applications
A small open source library helps with mapping Java exceptions and transporting HTTP metadata.
The move from Mercurial to Git provided an opportunity to consolidate the source code repositories.
Learn about wildcards, bounded wildcards, subtyping, and type erasure.
The need to encapsulate the runtime is fundamentally caused by Java’s nature as an open programming environment.
Learn how to use generics to increase type safety and code readability.
This broad collection of utilities and functions from Google merits a principal place in your toolkit.
Java Champions love pattern matching for instanceof, records, Stream.toList(), the vector API, the foreign linker API, and the foreign-memory access API.
Learn how to control Oracle Cloud Infrastructure resources through Java code.
Your words, actions, and attitude can inspire creativity. Here’s what to do.
High-speed trades? Quantitative analysis? The investment pays off.
The release is only a year away. Here’s what to expect.
Information from the Oracle Java Platform Group and from Java Magazine
The Java Champions say these are a few of their favorite things.
Porting Java to the AArch64 architecture is a JEP 388 success story.
Tribuo is an open source ML library designed for business applications—and for interoperability with many popular ML platforms.
Temporary files are frequently used in testing and in production. Here is how to create and manage—and delete—them.
Special bytecodes make calling methods particularly efficient. Knowing how they operate reveals how the JVM executes your code.
Read them, reread them, share them.
Helidon SE and Helidon MP provide a very diverse array of methods for accessing data sources.
By applying cloud native designs, you can build resilient, easily adaptable, web-scale distributed applications that handle massive user traffic and data loads.
WebSocket is a two-way communication protocol that lets clients send and receive messages over a single connection to a server endpoint.
See how virtual threads bring back the old days of Java’s green threads—that is, Java threads not tied to operating-system threads.
How to push a Coherence CE application out to a Kubernetes cluster, and then scale and manage that cluster
Arm-based processors are increasingly popular and are in the news thanks to Apple’s latest notebooks and Oracle’s cloud services.
Pin-down tests are the key to stabilizing your legacy Java code.