Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/awesomelistsio/awesome-java

A curated list of awesome frameworks, libraries, tools, and resources for Java programming.
https://github.com/awesomelistsio/awesome-java

List: awesome-java

awesome awesome-list awesome-lists java

Last synced: 22 days ago
JSON representation

A curated list of awesome frameworks, libraries, tools, and resources for Java programming.

Awesome Lists containing this project

README

        

# Awesome Java [![Awesome Lists](https://srv-cdn.himpfen.io/badges/awesome-lists/awesomelists-flat.svg)](https://github.com/awesomelistsio/awesome)

[![Buy Me A Coffee](https://srv-cdn.himpfen.io/badges/buymeacoffee/buymeacoffee-flat.svg)](https://tinyurl.com/2h9aktmd)   [![Ko-Fi](https://srv-cdn.himpfen.io/badges/kofi/kofi-flat.svg)](https://tinyurl.com/d4xnrptz)   [![PayPal](https://srv-cdn.himpfen.io/badges/paypal/paypal-flat.svg)](https://tinyurl.com/mr22naua)   [![Stripe](https://srv-cdn.himpfen.io/badges/stripe/stripe-flat.svg)](https://tinyurl.com/e8ymxdw3)

> A curated list of awesome frameworks, libraries, tools, and resources for Java programming.

## Contents

- [Libraries](#libraries)
- [Core Libraries](#core-libraries)
- [Web Frameworks](#web-frameworks)
- [Testing](#testing)
- [Database](#database)
- [JSON](#json)
- [HTTP Clients](#http-clients)
- [Dependency Injection](#dependency-injection)
- [Tools](#tools)
- [Build Tools](#build-tools)
- [IDEs](#ides)
- [Learning Resources](#learning-resources)
- [Books](#books)
- [Community](#community)

## Libraries

### Core Libraries

- [Guava](https://github.com/google/guava) - Google's core libraries for Java, including collections, caching, primitives, and more.
- [Apache Commons](https://commons.apache.org/) - A collection of reusable Java components.
- [Joda-Time](https://www.joda.org/joda-time/) - A library for date and time handling before Java 8's `java.time`.

### Web Frameworks

- [Spring Boot](https://spring.io/projects/spring-boot) - A framework for creating stand-alone, production-grade Spring-based applications.
- [Micronaut](https://micronaut.io/) - A modern, JVM-based, full-stack framework for building modular microservices.
- [Quarkus](https://quarkus.io/) - A Kubernetes-native Java stack tailored for GraalVM and OpenJDK HotSpot.

### Testing

- [JUnit](https://junit.org/junit5/) - A simple framework for writing repeatable tests.
- [Mockito](https://site.mockito.org/) - A popular mocking framework for unit tests in Java.
- [AssertJ](https://assertj.github.io/doc/) - A fluent assertion library for Java tests.

### Database

- [Hibernate](https://hibernate.org/) - A powerful, high-performance Object-Relational Mapper (ORM).
- [Flyway](https://flywaydb.org/) - A database migration tool.
- [H2 Database](https://www.h2database.com/) - A fast, open-source, in-memory database for Java.

### JSON

- [Jackson](https://github.com/FasterXML/jackson) - A popular library for parsing and generating JSON in Java.
- [Gson](https://github.com/google/gson) - A Java library by Google to convert Java objects to JSON and vice versa.
- [JSON-B](https://javaee.github.io/jsonb-spec/) - The JSON Binding API for Java.

### HTTP Clients

- [OkHttp](https://square.github.io/okhttp/) - An HTTP client for Java.
- [Apache HttpClient](https://hc.apache.org/httpcomponents-client-5.0.x/index.html) - A flexible HTTP client for Java.
- [RestTemplate](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html) - A Spring framework HTTP client for RESTful requests.

### Dependency Injection

- [Spring Framework](https://spring.io/projects/spring-framework) - The most widely used dependency injection framework.
- [Dagger](https://dagger.dev/) - A fast dependency injector for Java and Android.
- [Guice](https://github.com/google/guice) - A lightweight dependency injection framework by Google.

## Tools

- [Maven](https://maven.apache.org/) - A build automation tool used for Java projects.
- [Gradle](https://gradle.org/) - A powerful build automation system that makes it easier to build, test, and deploy software.
- [JRebel](https://www.jrebel.com/) - A tool to skip redeploys during Java development.

## Build Tools

- [Maven](https://maven.apache.org/) - A popular build and project management tool.
- [Gradle](https://gradle.org/) - A flexible build tool with powerful dependency management.

## IDEs

- [IntelliJ IDEA](https://www.jetbrains.com/idea/) - A powerful and ergonomic IDE for Java.
- [Eclipse](https://www.eclipse.org/) - An open-source, community-driven IDE for Java development.
- [NetBeans](https://netbeans.apache.org/) - An open-source IDE for Java SE, Java EE, and other languages.

## Learning Resources

- [Java Documentation](https://docs.oracle.com/javase/tutorial/) - Official Java tutorials and guides.
- [Baeldung](https://www.baeldung.com/) - A website with Java tutorials, guides, and news.
- [Codecademy: Learn Java](https://www.codecademy.com/learn/learn-java) - An interactive course for learning Java basics.

## Books

- *Effective Java* by Joshua Bloch - A comprehensive guide to best practices in Java programming.
- *Java: The Complete Reference* by Herbert Schildt - A comprehensive guide to the Java language.
- *Head First Java* by Kathy Sierra & Bert Bates - A beginner-friendly guide to learning Java.

## Community

- [Stack Overflow](https://stackoverflow.com/questions/tagged/java) - A Q&A site for Java-related programming questions.
- [Reddit: r/java](https://www.reddit.com/r/java/) - A community for Java news, discussions, and questions.
- [Java Discord Community](https://discord.com/invite/java) - A chat community for Java developers.

## Contribute

Contributions are welcome!

## License

[![CC0](https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/by-sa.svg)](http://creativecommons.org/licenses/by-sa/4.0/)