Skip to main content
Redhat Developers  Logo
  • Products

    Platforms

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat AI
      Red Hat AI
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • View All Red Hat Products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat Developer Hub
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat OpenShift Local
    • Red Hat Developer Sandbox

      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Secure Development & Architectures

      • Security
      • Secure coding
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • Product Documentation
    • API Catalog
    • Legacy Documentation
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

Where to learn about Java from Red Hat

December 26, 2022
Heiker Medina
Related topics:
Java
Related products:
Red Hat Enterprise Linux

Share:

    You've found a great place for Java programming 101 content. In this article, we've gathered the highest-performing articles from the past year on this topic on Red Hat Developer. This article introduces you to all things related to Java, from its essential business benefits to the most modern frameworks and tools.

    What is Java and where did it come from?

    Java is a computer programming language that is widely used for developing enterprise, web, and mobile applications, and has been in use for over two decades. Java has been used to code millions of applications that run on the internet, and it can be used as a platform for developing applications for mobile devices, enterprise software, big data applications, and server-side technologies.

    The Java programming language was developed in 1991 by James Gosling and a team of computer scientists at Sun Microsystems. They used the language to develop software for the newest niche market known as the World Wide Web. The group released Java to the public in 1995, making it available for use in applications ranging from internet browsers to video game development.

    How is Java being used?

    Java is a powerful, versatile, open source language that can be used for many applications. It is freely available and can be used to make software that is both localized and distributed. Some examples of Java's uses are:

    • Video game development: Java is a popular language for mobile, computer, and video game development. Many modern games that use cutting-edge technology, such as machine learning or virtual reality, are built with Java.
    • Cloud computing: Java's versatility allows developers to Write Once, Run Anywhere (known as WORA) on a wide range of devices. Cloud providers are increasingly choosing Java to power decentralized applications in the cloud.
    • Data processing: Java is used to process huge amounts of complex data sets and can analyze them in real time.
    • Artificial intelligence: Java is well-suited for developing artificial intelligence applications. Its speed and stability make it a perfect platform for building powerful machine learning systems, and its wide array of libraries makes it easy to implement natural language processing techniques and deep learning algorithms.
    • Internet of Things: Java is used to create applications for sensors and hardware in edge devices, which can connect independently to the internet. Edge devices include fitness trackers, robots, autonomous vehicles, and devices that transmit images and videos.

    Java tutorials to make you a DevOps superhero

    Red Hat offers incisive articles on numerous Java topics. The following sections list some of the most interesting articles for each topic.

    Java microservices

    • Distributed transaction patterns for microservices compared

      Without getting into a deep discussion about transactions, we can summarize this article by saying that Bilgin Ibryam summarizes the main approaches and patterns for coordinating writes to multiple resources.

    • Why should I choose Quarkus over Spring for my microservices?

      As interest in microservices and containers grows, Java developers are struggling to make their applications smaller and faster. Today's computing environment demands that applications respond quickly to requests, be suitable for running in volatile environments such as virtual machines or containers, and support rapid development.

    Garbage collection and memory management

    • Best practices for Java in single-core containers

      Teams that use Java need to pay special attention to certain aspects of container-based deployments. This article, written by Ben Evans, focuses on the choice of garbage collector and how the default choice is based on available CPUs and memory.

    • How to choose the best Java garbage collector

      Join Aashish Patil in how garbage collection performs dynamic memory management in many modern programming languages, including Java. Garbage collection lightens the load of worrying about memory management, freeing developers to focus on other aspects of application development. This article is the third in a four-part series that explains how to improve Java performance by choosing and tuning a garbage collector. (You can also start with the first article in the series.)

    Java libraries and tools

    • An easier way to generate PDFs from HTML templates

      If you need to create invoices, reports, IDs, or other documents in a PDF format, you might consider using Java libraries and tools. This article by Muhammad Edwin introduces wkhtmltopdf, a tool for creating PDF files from HTML. You'll discover how to set up your data and call the wkhtmltopdf utility from a Spring Boot web application running on the Red Hat OpenShift Container Platform.

    • Build a REST API from the ground up with Quarkus 2.0

      In this article, led by Stephen Nimmo, you will revisit the Customer API from a previous article in the series and see how it can be improved thanks to advances in the Quarkus framework.

    • How to create Kafka consumers and producers in Java

      This article helps you get started working with producers and consumers in the Kafka data streaming service from an object-oriented perspective. The article covers the basics of creating and using Kafka producers and consumers in Java.

    • How the JIT compiler boosts Java performance in OpenJDK

      This article introduces the JIT compiler built into HotSpot, OpenJDK's Java virtual machine. After reading it, you'll have a solid understanding of HotSpot's multitiered execution model and how it balances the resources required by your Java applications and the compiler itself. You'll also see two examples that demonstrate how a JIT compiler can use advanced techniques—deoptimization and speculation—to boost application performance.

    • Red Hat expands support for Java with Eclipse Temurin

      Red Hat has provided support for Temurin since its early development. Now we are pleased to announce that Red Hat is expanding our contributions to include support for the Eclipse Temurin project.

    • Observability in 2022: Why it matters and how OpenTelemetry can help

      This article tells you about observability, a practice and environment for monitoring your software. We'll look at why observability is important, how it works, and what to look out for when using it.

    • How Helm and JKube simplify Kubernetes management, part 1

      Follow along with Rohan Kumar to show how to use Helm and JKube to simplify Kubernetes manifest management for Java projects. You'll learn how JKube makes it possible for Java developers to automatically generate and publish Helm charts.

    The Developer Sandbox is a great place to start

    Interested in developing your first application at no cost? Test out the Developer Sandbox on Red Hat OpenShift and learn by doing.

    Recent Posts

    • Staying ahead of artificial intelligence threats

    • Strengthen privacy and security with encrypted DNS in RHEL

    • How to enable Ansible Lightspeed intelligent assistant

    • Why some agentic AI developers are moving code from Python to Rust

    • Confidential VMs: The core of confidential containers

    What’s up next?

    The microservice architectural approach is more than just about technology: It reaches into the foundation of your organization to allow you to build truly scalable, adaptive, complex systems that help a business adapt to rapidly changing competitive markets. In Microservices for Java Developers, you'll get a hands-on introduction to frameworks and containers through a handful of familiar patterns.

    Get the e-book
    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Products

    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2025 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue