java.md
July 15, 2021 · View on GitHub
Bookmarks tagged [java]
www.codever.land/bookmarks/t/java
prometheus/jmx_exporter home page
https://github.com/prometheus/jmx_exporter
JMX to Prometheus exporter: a collector that can configurably scrape and expose mBeans of a JMX target.
This exporter is intended to be run as a Java Agent, exposing a HTTP server and serving metrics...
- tags: prometheus, monitoring, java, java-agent, jmx
- :octocat: source code
Écrire un code lisible et facile à maintenir en Java • Dev Java - Freelance Java
https://dev-java.fr/bonnes-pratiques-code-java-lisible-maintenable/
Il n’est pas facile d’écrire du code propre, il doit être lisible et maintenable, pour soi-même et surtout pour les ... Lire la suite
- :calendar: published on: 2021-06-23
- tags: java, programming
Comprendre les Optional en Java • Dev Java - Freelance Java
https://dev-java.fr/comprendre-optional-java/
Introduction Optional, une classe introduite dans Java 8, est souvent mal utilisée. L’élimination des valeurs nulles n’est pas un objectif ... Lire la suite
- :calendar: published on: 2021-06-17
- tags: java, programming
Difference Between Java Keystore and Truststore
https://www.baeldung.com/java-keystore-truststore-difference
In this quick article, we'll provide an overview of the differences between a Java keystore and a Java truststore.
A Java keystore stores private key entries, certificates with public keys or jus...
- :calendar: published on: 2021-05-21
- tags: java, keystore, truststore
Home · xmlunit/user-guide Wiki
https://github.com/xmlunit/user-guide/wiki
XMLUnit is a library available for Java and .NET that helps verifying pieces of XML contain what they are supposed to. Its main use is inside of Unit Tests where you verify content created by your pro...
- tags: xmlunit, user-guide, java, .net
Lesson: Generics (The Java™ Tutorials)
https://docs.oracle.com/javase/tutorial/extra/generics/index.html
Introduced in J2SE 5.0, this long-awaited enhancement to the type system allows a type or method to operate on objects of various types while providing compile-time type safety. It adds compile-time t...
XMLUnit - Unit Testing XML for Java and .NET home page
When testing XML your application creates, simple string comparisons don't cut it as there are many different ways the same XML content is serialized to a string. It doesn't even stop with serializati...
- tags: java, .net, testing, xml, xmlunit, unit-testing
- :octocat: source code
Introduction To XMLUnit 2.x
https://www.baeldung.com/xmlunit2
XMLUnit 2.x is a powerful library that helps us test and verify XML content, and comes in particularly handy when we know exactly what that XML should contain.
And so we'll mainly be using XMLUnit in...
- tags: xmlunit, testing, java
- :octocat: source code
Enum Mappings with Hibernate - The Complete Guide
https://thorben-janssen.com/hibernate-enum-mappings/
With Hibernate, you can map enums in 3 ways:
- Hibernate’s standard mappings provide a simple way to store enum values in your database. You can choose if you want to persist the String representati...
Unit test your Java architecture - ArchUnit home page
ArchUnit is a free, simple and extensible library for checking the architecture of your Java code using any plain Java unit test framework. That is, ArchUnit can check dependencies between packages an...
- tags: java, testing, architecture
- :octocat: source code
Message Driven Beans, attributes explanation - Jboss Docs
https://docs.jboss.org/ejb3/docs/tutorial/mdb/mdb.html
This example shows you how to implement an MDB with EJB 3.0 using annotations. Take a look at [ExampleMDB.java](https://docs.jboss.org/ejb3/docs/tutorial/mdb/src/org/jboss/tutorial/mdb/bean/ExampleMDB...
- tags: java, javaee, ejb, message-driven-bean, messaging
MicroProfile GraphQL
https://download.eclipse.org/microprofile/microprofile-graphql-1.0/microprofile-graphql.html
The intent of the MicroProfile GraphQL specification is to provide a "code-first" set of APIs that will enable users to quickly develop portable GraphQL-based applications in Java.
Testing Java Collections with AssertJ
https://medium.com/enfuse-io/testing-java-collections-with-assertj-2fa678d80952
Testing Collections in Java? You can say “Not a big deal”. I agree, but, for example, a comparison of two Lists of custom objects can be painful and it is not the only problem you can run into. Let’s ...
Objenesis home page
Objenesis is a small Java library that serves one purpose:
- To instantiate a new object of a particular class.
- tags: java
A Unit Tester's Guide to Mockito
https://www.toptal.com/java/a-guide-to-everyday-mockito
In this article, we’ll cover creating and configuring mocks and using them to verify the expected behavior of the system being tested. We’ll also dive a bit into Mockito’s internals to better understa...
- tags: testing, java, mockito, junit, unit-testing
- :octocat: source code
Byte Buddy - runtime code generation for the Java virtual machine
Byte Buddy is a code generation and manipulation library for creating and modifying Java classes during the runtime of a Java application and without the help of a compiler. Other than the code genera...
- tags: java, virtual-machine, jvm, runtime
- :octocat: source code
Java Annotated Monthly – December 2020 | JetBrains Blog
https://blog.jetbrains.com/idea/2020/12/java-annotated-monthly-december-2020/
- :calendar: published on: 2020-12-02
- tags: java, programming
Java libraries I like – Eduards Sizovs
https://sizovs.net/2020/11/24/java-libraries-i-like/
The list was updated in 2020.
Everyone knows Spring and Hibernate, but there are other libraries and frameworks that are worth your attention. I pulled a list of 36 Java libraries that I like and use...
Essential Java - a free Java programming book
https://essential-java.programming-books.io/
'Essential Java' is a free programming book about Java
- tags: java
Getting started with Java Language | Java Language Tutorial
https://java.programmingpedia.net/
- tags: java
GitHub - akullpp/awesome-java: A curated list of awesome frameworks, libraries and software for the Java programming language.
https://github.com/akullpp/awesome-java
A curated list of awesome frameworks, libraries and software for the Java programming language. - akullpp/awesome-java
- tags: java
Multiple Media Types in Java Microservices with RESTEasy
https://stackify.com/multiple-media-types-java-microservices-resteasy/
Learn how RESTEasy can help you support XML and JSON in a Java web service. Know the differences between REST, media types, web services and microservices.
Advanced HTTP Mocking with WireMock at DevFest DC - 43min
https://www.youtube.com/watch?v=x3MvZ8DFrpE
Create HTTP mocks with WireMock’s REST API from any language for deterministic testing a...
GraphQL Java Home Page
This is the home page of the GraphQL Java implementation
- tags: graphql, java
- :octocat: source code
GitHub - jirutka/validator-collection
https://github.com/jirutka/validator-collection
This library allows you to easily create a “pseudo constraint” (typically named as @EachX) for any validation constraint to annotate a collection of simple types, without writing an extra validato...
- tags: java, bean-validation
- :octocat: source code
Home - javaalmanac.io
- tags: java
The JMeter Maven Plugin
https://github.com/jmeter-maven-plugin/jmeter-maven-plugin
A Maven plugin that provides the ability to run JMeter tests as part of your build
All the documentation you need to configure the plugin is available on the [Github Wiki](https://github.com/jmeter-m...
- tags: jmeter, maven-plugin, java
SEI CERT Oracle Coding Standard for Java
https://wiki.sei.cmu.edu/confluence/display/java/SEI+CERT+Oracle+Coding+Standard+for+Java
The Java rules and recommendations in this wiki are a work in progress and reflect the current thinking of the secure coding community. Because this is a development website, many pages are incomplete...
- tags: java, linter, code-analysis
winterbe/java8-tutorial: Modern Java - A Guide to Java 8
https://github.com/winterbe/java8-tutorial#lambda-expressions
Welcome to my introduction to Java 8. This tutorial guides you step by step through all new language features. Backed by short and simple code samples you'll learn how to use default interface methods...
- tags: java, java-8
- :octocat: source code
kdn251/interviews: Everything you need to know to get the job.
https://github.com/kdn251/interviews
Your personal guide to Software Engineering technical interviews.
- tags: java, interview-question
- :octocat: source code
10 excellent GitHub repositories for every Java developer | by Md Kamaruzzaman | Jul, 2020 | Towards Data Science
https://towardsdatascience.com/10-excellent-github-repositories-for-every-java-developer-41084a91ade...
Java is the undisputed king of the Enterprise Software development and one of the top in-demand programming languages overall. It has recently celebrated its 25th birthday, and it will remain one of…
Apache JMeter home page
The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Appli...
- tags: jmeter, performance, testing, java
GitHub - TheAlgorithms/Java: All Algorithms implemented in Java
https://github.com/TheAlgorithms/Java
All Algorithms implemented in Java. Contribute to TheAlgorithms/Java development by creating an account on GitHub.
- tags: java, algorithms
OpenJDK: jmh
https://openjdk.java.net/projects/code-tools/jmh/
JMH is a Java harness for building, running, and analysing nano/micro/milli/macro benchmarks written in Java and other languages targetting the JVM.
- tags: java, jvm, benchmarking
- :octocat: source code
@Stateless As JAX-RS Resource? - 5min
https://www.youtube.com/watch?time_continue=96&v=BnUsNlPnZZo&feature=emb_logo
@Stateless is an interesting component to be used as JAX-RS resource. Even if performance is not your primary goal: [https://www.youtube.com/watch?v=6Gm0u9gX56w](https://www.youtube.com/watch?v=6Gm0u9...
- :calendar: published on: 2016-04-26
- tags: java, javaee, ejb, monitoring, microservices
How do servlets work? Instantiation, sessions, shared variables and multithreading
https://stackoverflow.com/questions/3106452/how-do-servlets-work-instantiation-sessions-shared-varia...
Detailed response about ServletContext, HttpSession and Thread Safety
- :calendar: published on: 2010-06-24
- tags: java, multithreading, servlets, session-variables, instance-variables
Bean Validation 2.0 - you’ve put your annotations everywhere! by Gunnar Morling - 14min
https://www.youtube.com/watch?v=GdKuxmtA65I
Bean Validation 2.0 is out and the theme is Java 8. That’s a good thing since Java 8 brings not only new types to validate but also new locations to put annotations on.
We took that round to add usef...
- :calendar: published on: 2017-11-10
- tags: javabeans, bean-validation, java, java-8
Create Your Own Constraints With Bean Validation 2.0 - DZone Java
https://dzone.com/articles/create-your-own-constraint-with-bean-validation-20
Take a look at how you can create and export your own custom constraints for Bean Validation with this step-by-step tutorial.
- :calendar: published on: 2018-01-09
- tags: java, validation, bean-validation
Jakarta Bean Validation - Home Page
What is Jakarta Bean Validation Jakarta Bean Validation is a Java specification which
- lets you express constraints on object models via annotations
- lets you write custom constraints in an ext...
- tags: java, javaee, bean-validation, javabeans, validation
A Quarter of a Century of Java - Azul Systems
https://www.azul.com/a-quarter-of-a-century-of-java/
Java has evolved over the last 25 years. Take a look at how the core Java platform has changed over time. Happy Birthday, Java!
- tags: java
Spring, Jakarta EE, CDI: The Good Parts - 1h:40min
https://www.youtube.com/watch?v=Px_FCgmrCLQ
For few last years I was doing many presentations about problems caused by container based dependency injections and runtime aspects based on dynamic proxy. If You are not familiar with this I will qu...
Lunatech Blog: What every web developer must know about URL encoding
https://www.talisman.org/~erlkonig/misc/lunatech%5Ewhat-every-webdev-must-know-about-url-encoding/
This article describes common misconceptions about Uniform Resource Locator (URL) encoding, then attempts to clarify URL encoding for HTTP, before presenting frequent problems and their solutions. Whi...
List of Built-In Bean Validation Constraints
https://javaee.github.io/tutorial/bean-validation002.html
Several built-in constraints are available in the javax.validation.constraints package. This link list them.
- tags: java, validation
Hibernate Validator - Jakarta Bean Validation Reference Implementation - Create custom constraints
https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/#validator-customconst...
The Jakarta Bean Validation API defines a whole set of standard constraint annotations such as @NotNull, @Size etc. In cases where these built-in constraints are not sufficient, you can easily create ...
- tags: java, validation, javaee
Immutables.org
Java annotation processors to generate simple, safe and consistent value objects. Do not repeat yourself, try Immutables, the most comprehensive tool in this field!
- tags: java, immutable
- :octocat: source code
The JDK Ecosystem - Level Up Coding
https://levelup.gitconnected.com/the-jdk-ecosystem-adeaec20b3a9
About 10 years after Java’s inception in 1996, Sun Microsystems released OpenJDK in 2007, a free and open-source implementation of Java SE. Many companies started to join as contributors. And now many...
- tags: java
Unirest Java Documentation
http://kong.github.io/unirest-java/
Unirest in Java: Simplified, lightweight HTTP client library.
- tags: java, unirest, http-client
- :octocat: source code
World-class heap Dump analysis - Java, Android memory dump analyzer
- tags: java
Method References (The Java™ Tutorials)
https://docs.oracle.com/javase/tutorial/java/javaOO/methodreferences.html
You use lambda expressions to create anonymous methods. Sometimes, however, a lambda expression does nothing but call an existing method. In those cases, it's often clearer to refer to the existing me...
Java 8 Collectors toMap
https://www.baeldung.com/java-collectors-tomap
In this quick tutorial, we're going to talk about the toMap() method of the Collectors class. We'll use it to collect Streams into a Map instance
- :calendar: published on: 2020-04-20
- tags: java
- :octocat: source code
State of the Lambda
http://cr.openjdk.java.net/~briangoetz/lambda/lambda-state-final.html
Java SE 8 adds a relatively small number of new language features -- lambda expressions, method references, default and static methods in interfaces, and more widespread use of type inference. Taken t...
Using Java Reflection
https://www.oracle.com/technical-resources/articles/java/javareflection.html
Reflection is a feature in the Java programming language. It allows an executing Java program to examine or "introspect" upon itself, and manipulate internal properties of the program. For example, it...
- :calendar: published on: 1998-01-01
- tags: java, reflection
Project Lombok: Clean, Concise Java Code
https://www.oracle.com/corporate/features/project-lombok.html
Add Lombok to your project and get rid of most of your boilerplate code.
- tags: lombok, java, clean-code
google-java-format - plugin for IntelliJ IDEs
https://plugins.jetbrains.com/plugin/8527-google-java-format
Formats source code using the google-java-format tool.
- tags: java, google-java-format, intellij, plugins
- :octocat: source code
google/google-java-format home page
https://github.com/google/google-java-format
google-java-format is a program that reformats Java source code to comply with
Google Java Style.
- tags: java, google-java-format
- :octocat: source code
Wiremock Home Page
WireMock is a simulator for HTTP-based APIs. Some might consider it a service virtualization tool or a mock server.
It enables you to stay productive when an API you depend on doesn't exist or isn't ...
A categorized list of all Java and JVM features since JDK 8 to 14 - Advanced Web Machinery
https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-14/
From Java 8 to 14
- tags: java
Quarkus for Spring Developers
https://quarkus.io/blog/quarkus-for-spring-developers/
The arrival of Quarkus 1.0 brings an innovative platform for developing Linux container- and kubernetes-native Java microservices. Developers typically have to set aside their existing knowledge as th...
- :calendar: published on: 2019-12-11
- tags: quarkus, spring-boot, spring, java
Quarkus - Supersonic Subatomic Java
A Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards.
- tags: java, graalvm, quarkus
- :octocat: source code
My favorite books to learn Java in-depth — Must Read
https://medium.com/javarevisited/my-favorite-books-to-learn-java-in-depth-must-read-9c4468aeec99
Hello guys, today is the world of online learning. Everyone is talking about learning from online training courses, Youtube, free courses on Coursera, Udemy and other websites, which is great as…
- tags: java
JDK 8: Lessons Learnt With Lambdas and Streams - 30min
https://www.youtube.com/watch?v=wZKmA6XodNE&t=3s
Recorded at SpringOne Platform 2016. Speaker: Simon Ritter, Azul Slides: http://www.slideshare.net/SpringCentral/jdk8-lessons-learnt-with-lambdas-and-streams
Lambda expressions and the streams API ad...
A Guide to Spring Framework Annotations - DZone Java
https://dzone.com/articles/a-guide-to-spring-framework-annotations
How to make a property nullable in JPA - GAE/J?
https://stackoverflow.com/questions/1910215/how-to-make-a-property-nullable-in-jpa-gae-j
Properties are nullable by default in JPA, except primitive types. You can control nullability using the nullable property of the @Column annotation, like so: ...
Codiva.io - Compile and Run Java Online
Compile and Run Code Online Codiva is an online compiler and IDE for C, C++ and Java.
- Online compiler. No installation needed
- Starts in less than a second
- Compiles as you type
- Auto complete ma...
- tags: dev-tools, java, cpp, c, ide, online-tools
Ehcache Home Page
Java's most widely used cache.
- tags: java, caching, spring, spring-boot
- :octocat: source code
Complete Guide: Inheritance strategies with JPA and Hibernate
https://thoughts-on-java.org/complete-guide-inheritance-strategies-jpa-hibernate/#comments
Hibernate and JPA support 4 inheritance strategies which map the entities to different table models. But which one is the best for your use case?
- tags: java, jpa, hibernate, inheritance, sql
JVM (Micrometer) dashboardData for Grafana | Grafana Labs
https://grafana.com/grafana/dashboards/4701
Dashboard for Micrometer instrumented applications (Java, Spring Boot, Micronaut)
- tags: monitoring, grafana, dashboard, jvm, java, micrometer
Prometheus Monitoring for Java Developers by Fabian Stäber - 29min
https://www.youtube.com/watch?v=jb9j_IYv4cU
This talk gives an introduction to monitoring with Prometheus, and shows how Java applications can expose metrics for Prometheus monitoring environments. We show how to instrument applications directl...
- :calendar: published on: 2016-11-09
- tags: prometheus, grafana, monitoring, java
- :octocat: source code
Java Naming Conventions
https://www.oracle.com/technetwork/java/codeconventions-135099.html
Code Conventions for the Java Programming Language
- tags: java, naming-conventions
java - Getting the parameters of a running JVM - Stack Overflow
https://stackoverflow.com/questions/5317152/getting-the-parameters-of-a-running-jvm
jps -lvm
Running categorized Tests using JUnit, Maven and Annotated-Test Suites
https://www.hascode.com/2012/12/running-categorized-tests-using-junit-maven-and-annotated-test-suite...
Sometimes we need to classify the tests in a project and a possible solution to achieve this goal is to assign different categories to the tests.
Often we’re doing this to separate the execution of f...
- :calendar: published on: 2012-12-06
- tags: maven, maven-plugin, testing, java
- :octocat: source code
Togglz - Features flag for Java
Togglz is an implementation of the Feature Toggles pattern for Java. Feature Toggles are a very common agile development practices in the context of...
- tags: java, continuous-deployment, agile
- :octocat: source code
Basic JavaScript: Manipulating Complex Objects | Learn freeCodeCamp
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript/manipulati...
Learn to code with free online courses, programming projects, and interview preparation for developer jobs.
Basic JavaScript: Delete Properties from a JavaScript Object | Learn freeCodeCamp
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript/delete-pro...
Learn to code with free online courses, programming projects, and interview preparation for developer jobs.
- tags: java, object, delete, properties
bennettanderson/rjni
https://github.com/benanders/rjni
- tags: rust, ffi, java
- :octocat: source code
drrb/java-rust-example
https://github.com/drrb/java-rust-example
- tags: rust, ffi, java
- :octocat: source code
rawrasaur/rust-jdbc
https://github.com/rawrasaur/rust-jdbc
- tags: rust, ffi, java
- :octocat: source code
Java Pub House – The tutorials for Java Professionals
- Description: podcast talks about how to program in Java.
- Host: Freddy Guime @fguime, Bob Paulin @bobpaulin
- Frequency: A...
- tags: podcast, java
Intro Guide to Dockerfile Best Practices - Docker Blog
https://blog.docker.com/2019/07/intro-guide-to-dockerfile-best-practices/
There are over one million Dockerfiles on GitHub today, but not all Dockerfiles are created equally. Efficiency is critical, and this blog series will cover five areas for Dockerfile best practices to...
- :calendar: published on: 2019-07-02
- tags: docker, dockerfile, maven, java
Vertx-Web
https://github.com/vert-x3/vertx-web
Vert.x-Web is a set of building blocks for building web applications with Vert.x, a toolkit for building reactive applications on the JVM.
- tags: rest, java
- :octocat: source code
Dropwizard
https://github.com/dropwizard/dropwizard
A framework for developing ops-friendly, high-performance, RESTful web services.
- tags: rest, java
- :octocat: source code
The State of Logging in Java
https://stackify.com/logging-java/
When developing an application, chances are that it won’t perform as expected on the first run. Developers know that if it happens in production, debuggers won’t be available. Hence, logging statement...
GOTO 2018 • Kubernetes-ize your Java Application • Arun Gupta - YouTube
https://www.youtube.com/watch?v=QgMwcpAT49M
Deploying your Java application in a Kubernetes cluster could feel like Alice in Wonderland. You keep going down the rabbit hole and don’t know how to make that ride comfortable. This no-slide and cod...
- :calendar: published on: 2019-01-25
- tags: java, kubernetes, istio, docker
gaphql-java-type-generator
https://github.com/graphql-java/graphql-java-type-generator
Auto-generates types for use with GraphQL Java
- tags: graphql, java, libraries
- :octocat: source code
schemagen-graphql
https://github.com/bpatters/schemagen-graphql
Schema generation and execution package that turns POJO's into a GraphQL Java queryable set of objects. Enables exposing any service as a GraphQL service using Annotations.
- tags: graphql, java, libraries
- :octocat: source code
graphql-java-annotations
https://github.com/Enigmatis/graphql-java-annotations
Provides annotations-based syntax for schema definition with GraphQL Java.
- tags: graphql, java, libraries
- :octocat: source code
graphql-java-tools
https://github.com/graphql-java-kickstart/graphql-java-tools
Schema-first graphql-java convenience library that makes it easy to bring your own implementations as data resolvers. Inspired by graphql-tools for J...
- tags: graphql, java, libraries
- :octocat: source code
graphql-java-servlet
https://github.com/graphql-java-kickstart/graphql-java-servlet
A framework-agnostic java servlet for exposing graphql-java query endpoints with GET, POST, and multipart uploads.
- tags: graphql, java, libraries
- :octocat: source code
spring-graphql-common
https://github.com/oembedler/spring-graphql-common
Spring Framework GraphQL Library.
- tags: graphql, java, libraries
- :octocat: source code
graphql-spring-boot
https://github.com/oembedler/graphql-spring-boot
GraphQL and GraphiQL Spring Framework Boot Starters.
- tags: graphql, java, libraries
- :octocat: source code
vertx-graphql-service-discovery
https://github.com/engagingspaces/vertx-graphql-service-discovery
Asynchronous GraphQL service discovery and querying for your microservices.
- tags: graphql, java, libraries
- :octocat: source code
vertx-dataloader
https://github.com/engagingspaces/vertx-dataloader
Port of Facebook DataLoader for efficient, asynchronous batching and caching in clustered GraphQL environments
- tags: graphql, java, libraries
- :octocat: source code
graphql-spqr
https://github.com/leangen/GraphQL-SPQR
Java 8+ API for rapid development of GraphQL services.
- tags: graphql, java, libraries
- :octocat: source code
Light Java GraphQL
https://github.com/networknt/light-graphql-4j
GraphQL implementation based on light-4j. Contribute to networknt/light-graphql-4j development by creating an account on GitHub.
- tags: graphql, java, libraries
- :octocat: source code
light-java-graphql examples
https://github.com/networknt/light-example-4j/tree/master/graphql
Examples of Light Java GraphQL and tutorials.
- tags: graphql, java
- :octocat: source code
graphql-spqr-samples
https://github.com/leangen/graphql-spqr-samples
An example GraphQL server written with Spring MVC and GraphQL-SPQR
- tags: graphql, java
- :octocat: source code
dOOv
https://github.com/doov-io/doov
Provides fluent API for typesafe domain model validation and mapping. It uses annotations, code generation and a type safe DSL to make bean validation and mapping fast and easy.
- tags: java, bean-mapping
- :octocat: source code
Dozer
https://github.com/DozerMapper/dozer
Mapper that copies data from one object to another using annotations and API or XML configuration.
- tags: java, bean-mapping
- :octocat: source code
JMapper
https://jmapper-framework.github.io/jmapper-core
Uses byte code manipulation for lightning-fast mapping. Supports annotations and API or XML configuration.
- tags: java, bean-mapping
MapStruct
https://github.com/mapstruct/mapstruct
Code generator that simplifies mappings between different bean types, based on a convention-over-configuration approach.
- tags: java, bean-mapping
- :octocat: source code
ModelMapper
https://github.com/jhalterman/modelmapper
Intelligent object mapping library that automatically maps objects to each other.
- tags: java, bean-mapping
- :octocat: source code
Orika
https://github.com/orika-mapper/orika
JavaBean-mapping framework that recursively copies (among other capabilities) data from one object to another.
- tags: java, bean-mapping
- :octocat: source code
Selma
https://github.com/xebia-france/selma
Annotation processor-based bean mapper.
- tags: java, bean-mapping
- :octocat: source code
Apache Maven
Declarative build and dependency management that favors convention over configuration. It might be preferable to Apache Ant, which uses a rather procedural approach and can be difficult to maintain.
Bazel
Tool from Google that builds code quickly and reliably.
Buck
https://github.com/facebook/buck
Encourages the creation of small, reusable modules consisting of code and resources.
- tags: java, build
- :octocat: source code
Gradle
Incremental builds programmed via Groovy instead of declaring XML. Works well with Maven's dependency management.
ASM
All-purpose, low-level bytecode manipulation and analysis.
- tags: java, bytecode-manipulation
Byte Buddy
Further simplifies bytecode generation with a fluent API.
- tags: java, bytecode-manipulation
bytecode-viewer
https://github.com/Konloch/bytecode-viewer
Java 8 Jar & Android APK reverse engineering suite.
- tags: java, bytecode-manipulation
- :octocat: source code
Byteman
Manipulate bytecode at runtime via DSL (rules); mainly for testing/troubleshooting.
- tags: java, bytecode-manipulation
cglib
https://github.com/cglib/cglib
Bytecode generation library.
- tags: java, bytecode-manipulation
- :octocat: source code
Javassist
https://jboss-javassist.github.io/javassist
Tries to simplify bytecode editing.
- tags: java, bytecode-manipulation
Mixin
https://github.com/SpongePowered/Mixin
Manipulate bytecode at runtime using real Java code.
- tags: java, bytecode-manipulation
- :octocat: source code
cache2k
In-memory high performance caching library.
Ehcache
Distributed general-purpose cache.
Infinispan
Highly concurrent key/value datastore used for caching.
ASCII Table
https://github.com/vdmeer/asciitable
Library to draw tables in ASCII.
- tags: java, cli
- :octocat: source code
Airline
https://github.com/airlift/airline
Annotation-based framework for parsing Git-like command-line arguments.
- tags: java, cli
- :octocat: source code
args4j
Small library to parse command-line arguments.
Jansi
https://github.com/fusesource/jansi
ANSI escape codes to format console output.
- tags: java, cli
- :octocat: source code
Java ASCII Render
https://github.com/indvd00m/java-ascii-render
Graphical primitives for the console.
- tags: java, cli
- :octocat: source code
JCommander
Command-line argument-parsing framework with custom types and validation via implementing interfaces.
jbock
https://github.com/h908714124/jbock
Typesafe, reflection-free, annotation based command-line parser
- tags: java, cli
- :octocat: source code
JLine
https://github.com/jline/jline3
Includes features from modern shells like completion or history.
- tags: java, cli
- :octocat: source code
JOpt Simple
https://pholser.github.io/jopt-simple
Fluent parser that uses the POSIXgetopt and GNUgetopt_long syntaxes.
picocli
ANSI colors and styles in usage help with annotation-based POSIX/GNU/any syntax, subcommands, strong typing for both options and positional args.
Text-IO
https://github.com/beryx/text-io
Aids the creation of full console-based applications.
- tags: java, cli
- :octocat: source code
Lanterna
https://github.com/mabe02/lanterna
Easy console text-GUI library, similar to curses.
- tags: java, cli
- :octocat: source code
Apache Aurora
Mesos framework for long-running services and cron jobs.
- tags: java, cluster-management
Apache Mesos
Abstracts CPU, memory, storage, and other compute resources away from machines.
- tags: java, cluster-management
Singularity
Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks.
- tags: java, cluster-management
Checkstyle
https://github.com/checkstyle/checkstyle
Static analysis of coding conventions and standards.
- tags: java, code-analysis
- :octocat: source code
Error Prone
https://github.com/google/error-prone
Catches common programming mistakes as compile-time errors.
- tags: java, code-analysis
- :octocat: source code
Infer
https://github.com/facebook/infer
Modern static analysis tool for verifying the correctness of code.
- tags: java, code-analysis
- :octocat: source code
jQAssistant
Static code analysis with Neo4J-based query language.
- tags: java, code-analysis
NullAway
https://github.com/uber/NullAway
Eliminates NullPointerExceptions with low build-time overhead.
- tags: java, code-analysis
- :octocat: source code
PMD
Source code analysis for finding bad coding practices.
- tags: java, code-analysis
- :octocat: source code
SonarJava
https://github.com/SonarSource/sonar-java
Static analyzer for SonarQube & SonarLint.
- tags: java, code-analysis
- :octocat: source code
[Sourcetrail 
Visual source code navigator.
- tags: java, code-analysis
Spoon
https://github.com/INRIA/spoon
Library for analyzing and transforming Java source code.
- tags: java, code-analysis
- :octocat: source code
Spotbugs
https://github.com/spotbugs/spotbugs
Static analysis of bytecode to find potential bugs.
- tags: java, code-analysis
- :octocat: source code
[Clover 
https://www.atlassian.com/software/clover/overview
Relies on source-code instrumentation instead of bytecode instrumentation.
- tags: java, code-coverage
Cobertura
https://cobertura.github.io/cobertura
Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics.
- tags: java, code-coverage
JaCoCo
Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation.
- tags: java, code-coverage
ADT4J
https://github.com/sviperll/adt4j
JSR-269 code generator for algebraic data types.
- tags: java, code-generation
- :octocat: source code
Auto
https://github.com/google/auto
Generates factory, service, and value classes.
- tags: java, code-generation
- :octocat: source code
FreeBuilder
https://github.com/google/FreeBuilder
Automatically generates the Builder pattern.
- tags: java, code-generation
- :octocat: source code
Immutables
Annotation processors to generate simple, safe and consistent value objects.
- tags: java, code-generation
JavaPoet
https://github.com/square/javapoet
API to generate source files.
- tags: java, code-generation
- :octocat: source code
JHipster
https://github.com/jhipster/generator-jhipster
Yeoman source code generator for Spring Boot and AngularJS.
- tags: java, code-generation
- :octocat: source code
Joda-Beans
http://www.joda.org/joda-beans
Small framework that adds queryable properties to Java, enhancing JavaBeans.
- tags: java, code-generation
Lombok
Code generator that aims to reduce verbosity.
- tags: java, code-generation
ANTLR
Complex full-featured framework for top-down parsing.
JavaCC
Parser generator that generates top-down parsers. Allows lexical state switching and permits extended BNF specifications.
JFlex
A lexical analyzer generator.
centraldogma
https://github.com/line/centraldogma
Highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2.
- tags: java, configuration
- :octocat: source code
cfg4j
https://github.com/cfg4j/cfg4j
Modern configuration library for distributed apps written in Java.
- tags: java, configuration
- :octocat: source code
config
https://github.com/typesafehub/config
Configuration library for JVM languages.
- tags: java, configuration
- :octocat: source code
dotenv
https://github.com/shyiko/dotenv
A twelve-factor configuration library for Java.
- tags: java, configuration
- :octocat: source code
ini4j
Provides an API for handling Windows' INI files.
- tags: java, configuration
KAConf
https://github.com/mariomac/kaconf
Annotation-based configuration system for Java and Kotlin.
- tags: java, configuration
- :octocat: source code
owner
https://github.com/lviggiano/owner
Reduces boilerplate of properties.
- tags: java, configuration
- :octocat: source code
Choco
Off-the-shelf constraint satisfaction problem solver that uses constraint programming techniques.
- tags: java
JaCoP
https://github.com/radsz/jacop
Includes an interface for the FlatZinc language, enabling it to execute MiniZinc models.
- tags: java
- :octocat: source code
OptaPlanner
Business planning and resource scheduling optimization solver.
- tags: java
jackson-dataformat-csv
https://github.com/FasterXML/jackson-dataformat-csv
Jackson extension for reading and writing CSV.
- tags: java, csv
- :octocat: source code
opencsv
http://opencsv.sourceforge.net
Simple CSV parser.
Super CSV
https://super-csv.github.io/super-csv
Powerful CSV parser with support for Dozer, Joda-Time and Java 8.
uniVocity-parsers
https://github.com/uniVocity/univocity-parsers
One of the fastest and most feature-complete parsers. Also comes with parsers for TSV and fixed-width records.
- tags: java, csv
- :octocat: source code
Apache Phoenix
High-performance relational database layer over HBase for low-latency applications.
AranoDB
https://github.com/arangodb/arangodb-java-driver
ArangoDB Java driver.
- tags: java, database
- :octocat: source code
Chronicle Map
https://github.com/OpenHFT/Chronicle-Map
Efficient, in-memory (opt. persisted to disk), off-heap key-value store.
- tags: java, database
- :octocat: source code
druid
High-performance, column-oriented, distributed data store.
eXist
https://github.com/eXist-db/exist
A NoSQL document database and application platform.
- tags: java, database
- :octocat: source code
FlexyPool
https://github.com/vladmihalcea/flexy-pool
Brings metrics and failover strategies to the most common connection pooling solutions.
- tags: java, database
- :octocat: source code
Flyway
Simple database migration tool.
H2
Small SQL database notable for its in-memory functionality.
HikariCP
https://github.com/brettwooldridge/HikariCP
High-performance JDBC connection pool.
- tags: java, database
- :octocat: source code
jasync-sql
https://github.com/jasync-sql/jasync-sql
Async DB driver for MySQL and PostgreSQL.
- tags: java, database
- :octocat: source code
JDBI
Convenient abstraction of JDBC.
Jest
https://github.com/searchbox-io/Jest
Client for the Elasticsearch REST API.
- tags: java, database, elasticsearch
- :octocat: source code
jetcd
https://github.com/justinsb/jetcd
Client library for etcd.
- tags: java, database
- :octocat: source code
Jinq
Typesafe database queries via symbolic execution of Java 8 Lambdas (on top of JPA or jOOQ).
- tags: java, database
- :octocat: source code
jOOQ
Generates typesafe code based on SQL schema.
Liquibase
Database-independent library for tracking, managing and applying database schema changes.
MapDB
Embedded database engine that provides concurrent collections backed on disk or in off-heap memory.
MariaDB4j
https://github.com/vorburger/MariaDB4j
Launcher for MariaDB that requires no installation or external dependencies.
- tags: java, database
- :octocat: source code
OrientDB
Embeddable distributed database written on top of Hazelcast.
Presto
https://github.com/prestodb/presto
Distributed SQL query engine for big data.
- tags: java, database
- :octocat: source code
Querydsl
Typesafe unified queries.
Realm
https://github.com/realm/realm-java
Mobile database to run directly inside phones, tablets or wearables.
- tags: java, database
- :octocat: source code
Redisson
https://github.com/mrniko/redisson
Allows for distributed and scalable data structures on top of a Redis server.
- tags: java, database
- :octocat: source code
requery
https://github.com/requery/requery
A modern, lightweight but powerful object mapping and SQL generator. Easily map to or create databases, or perform queries and updates from any Java-using platform.
- tags: java, database
- :octocat: source code
Speedment
https://github.com/speedment/speedment
Database access library that utilizes Java 8's Stream API for querying.
- tags: java, database
- :octocat: source code
sql2o
Thin JDBC wrapper that simplifies database access and provides simple mapping of ResultSets to POJOs.
Vibur DBCP
JDBC connection pool library with advanced performance monitoring capabilities.
Xodus
https://jetbrains.github.io/xodus
Highly concurrent transactional schema-less and ACID-compliant embedded database.
Apache Avro
Data interchange format with dynamic typing, untagged data, and absence of manually assigned IDs.
- tags: java, data-structures
Apache Orc
Fast and efficient columnar storage format for Hadoop-based workloads.
- tags: java, data-structures
Apache Parquet
Columnar storage format based on assembly algorithms from Google's paper on Dremel.
- tags: java, data-structures
Apache Thrift
Data interchange format that originated at Facebook.
- tags: java, data-structures
Big Queue
https://github.com/bulldog2011/bigqueue
A big, fast and persistent queue based on memory-mapped files.
- tags: java, data-structures
- :octocat: source code
HyperMinHash-java
https://github.com/LiveRamp/HyperMinHash-java
Probabilistic data structure for computing union, intersection, and set cardinality in loglog space.
- tags: java, data-structures
- :octocat: source code
Persistent Collection
Persistent and immutable analogue of the Java Collections Framework.
- tags: java, data-structures
Protobuf
https://github.com/google/protobuf
Google's data interchange format.
- tags: java, data-structures
- :octocat: source code
SBE
https://github.com/real-logic/simple-binary-encoding
Simple Binary Encoding, one of the fastest message formats around.
- tags: java, data-structures
- :octocat: source code
Tape
https://github.com/square/tape
A lightning-fast, transactional, file-based FIFO.
- tags: java, data-structures
- :octocat: source code
Wire
https://github.com/square/wire
Clean, lightweight protocol buffers.
- tags: java, data-structures
- :octocat: source code
Almanac Converter
https://github.com/hypotemoose/almanac-converter
Simple conversion between different calendar systems.
- tags: java, datetime
- :octocat: source code
iCal4j
https://github.com/ical4j/ical4j
Parse and build iCalendar RFC 5545 data models.
- tags: java, datetime
- :octocat: source code
ThreeTen-Extra
https://github.com/ThreeTen/threeten-extra
Additional date-time classes that complement those in JDK 8.
- tags: java, datetime
- :octocat: source code
Time4J
https://github.com/MenoData/Time4J
Advanced date and time library.
- tags: java, datetime
- :octocat: source code
Apache DeltaSpike
CDI extension framework.
- tags: java, dependency-injection
Dagger2
https://google.github.io/dagger
Compile-time injection framework without reflection.
- tags: java, dependency-injection
Feather
https://github.com/zsoltherpai/feather
Ultra-lightweight, JSR-330-compliant dependency injection library.
- tags: java, dependency-injection
- :octocat: source code
Governator
https://github.com/Netflix/governator
Extensions and utilities that enhance Google Guice.
- tags: java, dependency-injection
- :octocat: source code
Guice
https://github.com/google/guice
Lightweight and opinionated framework that completes Dagger.
- tags: java, dependency-injection
- :octocat: source code
HK2
Lightweight and dynamic dependency injection framework.
- tags: java, dependency-injection
JayWire
https://github.com/vanillasource/jaywire
Lightweight dependency injection framework.
- tags: java, dependency-injection
- :octocat: source code
AspectJ
Seamless aspect-oriented programming extension.
- tags: java, development
DCEVM
JVM modification that allows unlimited redefinition of loaded classes at runtime.
- tags: java, development
Faux Pas
https://github.com/zalando/faux-pas
Library that simplifies error handling by circumventing the issue that none of the functional interfaces in the Java Runtime is allowed by default to throw checked exceptions.
- tags: java, development
- :octocat: source code
HotswapAgent
https://github.com/HotswapProjects/HotswapAgent
Unlimited runtime class and resource redefinition.
- tags: java, development
- :octocat: source code
JavaParser
https://github.com/javaparser/javaparser
Parse, modify and generate Java code.
- tags: java, development
- :octocat: source code
JavaSymbolSolver
https://github.com/javaparser/javasymbolsolver
A symbol solver for Java.
- tags: java, development
- :octocat: source code
[JRebel 
https://zeroturnaround.com/software/jrebel
Instantly reloads code and configuration changes without redeploys.
- tags: java, development
NoException
https://noexception.machinezoo.com
Allows checked exceptions in functional interfaces and converts exceptions to Optional return.
- tags: java, development
SneakyThrow
https://github.com/rainerhahnekamp/sneakythrow
Ignores checked exceptions without bytecode manipulation. Can also be used inside Java 8 stream operations.
- tags: java, development
- :octocat: source code
Apache Geode
In-memory data management system that provides reliable asynchronous event notifications and guaranteed message delivery.
- tags: java, distributed-applications
Apache Storm
Realtime computation system.
- tags: java, distributed-applications
Apache ZooKeeper
Coordination service with distributed configuration, synchronization, and naming registry for large distributed systems.
- tags: java, distributed-applications
Atomix
Fault-tolerant distributed coordination framework.
- tags: java, distributed-applications
Axon Framework
Framework for creating CQRS applications.
- tags: java, distributed-applications
Dropwizard Circuit Breaker
https://github.com/mtakaki/dropwizard-circuitbreaker
Circuit breaker design pattern for Dropwizard.
- tags: java, distributed-applications
- :octocat: source code
[Hazelcast 
Highly scalable in-memory datagrid with a free open-source version.
- tags: java, distributed-applications
JGroups
Toolkit for reliable messaging and cluster creation.
- tags: java, distributed-applications
Orbit
Virtual actors; adds another level of abstraction to traditional actors.
- tags: java, distributed-applications
Quasar
https://www.paralleluniverse.co/quasar
Lightweight threads and actors for the JVM.
- tags: java, distributed-applications
ScaleCube
https://github.com/scalecube/scalecube
Embeddable Cluster-Membership library based on SWIM and gossip protocol.
- tags: java, distributed-applications
- :octocat: source code
Atomikos
Provides transactions for REST, SOA and microservices with support for JTA and XA.
- tags: java, distributed-transactions
Bitronix
https://github.com/bitronix/btm
A simple but complete implementation of the JTA 1.1 API.
- tags: java, distributed-transactions
- :octocat: source code
Narayana
Provides support for traditional ACID and compensation transactions, also complies with JTA, JTS and other standards.
- tags: java, distributed-transactions
[Bintray 
Version control for binaries that handle publishing. Compatible with Maven or Gradle, with a free plan for open-source software as well as several business plans.
- tags: java, distribution
Boxfuse
Deployment of JVM applications to AWS using the principles of immutable infrastructure.
- tags: java, distribution
Capsule
Simple and powerful packaging and deployment. A fat JAR on steroids, or a "Docker for Java" that supports JVM-optimized containers.
- tags: java, distribution
Central Repository
Largest binary component repository available as a free service to the open-source community. Default used by Apache Maven, and available in all other build tools.
- tags: java, distribution
[Cloudsmith 
Fully managed package management SaaS with support for Maven/Gradle/SBT.
- tags: java, distribution
IzPack
Setup authoring tool for cross-platform deployments.
- tags: java, distribution
JitPack
Easy-to-use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages.
- tags: java, distribution
[Nexus 
https://www.sonatype.com/nexus/solution-overview
Binary management with proxy and caching capabilities.
- tags: java, distribution
packr
https://github.com/libgdx/packr
Packs JARs, assets and the JVM for native distribution on Windows, Linux and Mac OS X.
- tags: java, distribution
- :octocat: source code
really-executable-jars-maven-plugin
https://github.com/brianm/really-executable-jars-maven-plugin
Maven plugin for making self-executing JARs.
- tags: java, distribution
- :octocat: source code
Apache POI
Supports OOXML (XLSX, DOCX, PPTX) as well as OLE2 (XLS, DOC or PPT).
- tags: java, document-processing
documents4j
API for document format conversion using third-party converters such as MS Word.
- tags: java, document-processing
docx4j
https://www.docx4java.org/trac/docx4j
Create and manipulate Microsoft Open XML files.
- tags: java, document-processing
zerocell
https://github.com/creditdatamw/zerocell
Annotation-based API for reading data from Excel sheets into POJOs with focus on reduced overhead.
- tags: java, document-processing
- :octocat: source code
CATG
https://github.com/ksen007/janala2
Concolic unit testing engine. Automatically generates unit tests using formal methods.
- tags: java, formal-verification
- :octocat: source code
Checker Framework
https://types.cs.washington.edu/checker-framework
Pluggable type systems. Includes nullness types, physical units, immutability types and more.
- tags: java, formal-verification
Daikon
https://plse.cs.washington.edu/daikon
Detects likely program invariants and generates JML specs based on those invariants.
- tags: java, formal-verification
Java Path Finder (JPF)
JPF
JVM formal verification tool containing a model checker and more. Created by NASA.
- tags: java, formal-verification
JMLOK 2.0
http://massoni.computacao.ufcg.edu.br/home/jmlok
Detects inconsistencies between code and JML specification through feedback-directed random tests generation, and suggests a likely cause for each nonconformance detected.
- tags: java, formal-verification
KeY
Formal software development tool that aims to integrate design, implementation, formal specification, and formal verification of object-oriented software as seamlessly as possible. Uses JML for specif...
- tags: java, formal-verification
OpenJML
Translates JML specifications into SMT-LIB format and passes the proof problems implied by the program to backend solvers.
- tags: java, formal-verification
cyclops-react
https://github.com/aol/cyclops-react
Monad and stream utilities, comprehensions, pattern matching, functional extensions for all JDK collections, future streams, trampolines and much more.
- tags: java, functional-programming
- :octocat: source code
derive4j
https://github.com/derive4j/derive4j
Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching and morphisms.
- tags: java, functional-programming
- :octocat: source code
Fugue
https://bitbucket.org/atlassian/fugue
Functional extensions to Guava.
- tags: java, functional-programming
Functional Java
Implements numerous basic and advanced programming abstractions that assist composition-oriented development.
- tags: java, functional-programming
jOOλ
Extension to Java 8 that aims to fix gaps in lambda by providing numerous missing types and a rich set of sequential Stream API additions.
- tags: java, functional-programming
- :octocat: source code
protonpack
https://github.com/poetix/protonpack
Collection of stream utilities.
- tags: java, functional-programming
- :octocat: source code
StreamEx
https://github.com/amaembo/streamex
Enhances Java 8 Streams.
- tags: java, functional-programming
- :octocat: source code
Vavr
Functional component library that provides persistent data types and functional control structures.
- tags: java, functional-programming
FXGL
JavaFX Game Development Framework.
- tags: java, game-development
jMonkeyEngine
Game engine for modern 3D development.
- tags: java, game-development
libGDX
https://libgdx.badlogicgames.com
All-round cross-platform, high-level framework.
- tags: java, game-development
LWJGL
Robust framework that abstracts libraries like OpenGL/CL/AL.
- tags: java, game-development
Apache SIS
Library for developing geospatial applications.
- tags: java, geospatial
Geo
https://github.com/davidmoten/geo
GeoHash utilities in Java.
- tags: java, geospatial
- :octocat: source code
Geotoolkit.org
Library for developing geospatial applications. Built on top of the Apache SIS project.
- tags: java, geospatial
GeoTools
Library that provides tools for geospatial data.
- tags: java, geospatial
GraphHopper
https://github.com/graphhopper/graphhopper
Road-routing engine. Used as a Java library or standalone web service.
- tags: java, geospatial
- :octocat: source code
H2GIS
A spatial extension of the H2 database.
- tags: java, geospatial
Jgeohash
https://astrapi69.github.io/jgeohash
Library for using the GeoHash algorithm.
- tags: java, geospatial
Mapsforge
https://github.com/mapsforge/mapsforge
Map rendering based on OpenStreetMap data.
- tags: java, geospatial
- :octocat: source code
Spatial4j
https://github.com/locationtech/spatial4j
General-purpose spatial/geospatial library.
- tags: java, geospatial
- :octocat: source code
JavaFX
https://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html
The successor of Swing.
Scene Builder
https://gluonhq.com/open-source/scene-builder
Visual layout tool for JavaFX applications.
SWT
The Standard Widget Toolkit, a graphical widget toolkit.
Agrona
https://github.com/real-logic/Agrona
Data structures and utility methods that are common in high-performance applications.
- tags: java, performance
- :octocat: source code
Disruptor
https://lmax-exchange.github.io/disruptor
Inter-thread messaging library.
- tags: java, performance
Eclipse Collections
https://github.com/eclipse/eclipse-collections
Collections framework inspired by Smalltalk.
- tags: java, performance
- :octocat: source code
fastutil
Fast and compact type-specific collections.
- tags: java, performance
HPPC
https://labs.carrotsearch.com/hppc.html
Primitive collections.
- tags: java, performance
JCTools
https://github.com/JCTools/JCTools
Concurrency tools currently missing from the JDK.
- tags: java, performance
- :octocat: source code
Koloboke
https://github.com/OpenHFT/Koloboke
Hash sets and hash maps.
- tags: java, performance
- :octocat: source code
Async Http Client
https://github.com/AsyncHttpClient/async-http-client
Asynchronous HTTP and WebSocket client library.
- tags: java, http-client
- :octocat: source code
Feign
https://github.com/Netflix/feign
HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket.
- tags: java, http-client
- :octocat: source code
OkHttp
https://square.github.io/okhttp
HTTP+SPDY client.
- tags: java, http-client
Play WS
https://github.com/playframework/play-ws
Typesafe client with reactive streams and caching.
- tags: java, http-client
- :octocat: source code
restQL-core
https://github.com/B2W-BIT/restQL-core
Microservice query language that fetches information from multiple services.
- tags: java, http-client
- :octocat: source code
Retrofit
https://square.github.io/retrofit
Typesafe REST client.
- tags: java, http-client
Riptide
https://github.com/zalando/riptide
Client-side response routing for Spring's RestTemplate.
- tags: java, http-client
- :octocat: source code
JSON-LD
https://github.com/jsonld-java/jsonld-java
JSON-LD implementation.
- tags: java, hypermedia-types
- :octocat: source code
Siren4J
https://github.com/eserating/siren4j
Library for the Siren specification.
- tags: java, hypermedia-types
- :octocat: source code
Eclipse
Established open-source project with support for lots of plugins and languages.
[IntelliJ IDEA 
https://www.jetbrains.com/idea
Supports many JVM languages and provides good options for Android development. The commercial edition targets the enterprise sector.
NetBeans
Provides integration for several Java SE and EE features, from database access to HTML5.
Visual Studio Code
https://code.visualstudio.com/docs/languages/java
Provides Java support for lightweight projects with a simple, modern workflow by using extensions from the internal marketplace.
Imgscalr
https://github.com/thebuzzmedia/imgscalr
Simple, efficient and hardware-accelerated image-scaling library implemented in pure Java 2D.
- tags: java, imagery
- :octocat: source code
Tess4J
https://github.com/nguyenq/tess4j
A JNA wrapper for Tesseract OCR API.
- tags: java, imagery
- :octocat: source code
Thumbnailator
https://github.com/coobird/thumbnailator
High-quality thumbnail generation library.
- tags: java, imagery
- :octocat: source code
TwelveMonkeys
https://github.com/haraldk/TwelveMonkeys
Collection of plugins that extend the number of supported image file formats.
- tags: java, imagery
- :octocat: source code
ZXing
https://github.com/zxing/zxing
Multi-format 1D/2D barcode image processing library.
- tags: java, imagery
- :octocat: source code
DSL-JSON
https://github.com/ngs-doo/dsl-json
JSON library with advanced compile time databinding.
- tags: java, json
- :octocat: source code
Genson
https://owlike.github.io/genson
Powerful and easy-to-use Java-to-JSON conversion library.
Gson
https://github.com/google/gson
Serializes objects to JSON and vice versa. Good performance with on-the-fly usage.
- tags: java, json
- :octocat: source code
HikariJSON
https://github.com/brettwooldridge/HikariJSON
High-performance JSON parser, 2x faster than Jackson.
- tags: java, json
- :octocat: source code
jackson-modules-java8
https://github.com/FasterXML/jackson-modules-java8
Set of Jackson modules for Java 8 datatypes and features.
- tags: java, json
- :octocat: source code
Jackson-datatype-money
https://github.com/zalando/jackson-datatype-money
Open-source Jackson module to support JSON serialization and deserialization of JavaMoney data types.
- tags: java, json
- :octocat: source code
Jackson
https://github.com/FasterXML/jackson
Similar to GSON, but offers performance gains if you need to instantiate the library more often.
- tags: java, json
- :octocat: source code
JSON-io
https://github.com/jdereg/json-io
Convert Java to JSON. Convert JSON to Java. Pretty print JSON. Java JSON serializer.
- tags: java, json
- :octocat: source code
jsoniter
Fast and flexible library with iterator and lazy parsing API.
LoganSquare
https://github.com/bluelinelabs/LoganSquare
JSON parsing and serializing library based on Jackson's streaming API. Outperforms GSON & Jackson's library.
- tags: java, json
- :octocat: source code
Moshi
https://github.com/square/moshi
Modern JSON library, less opinionated and uses built-in types like List and Map.
- tags: java, json
- :octocat: source code
Yasson
https://github.com/eclipse/yasson
Binding layer between classes and JSON documents similar to JAXB.
- tags: java, json
- :octocat: source code
fastjson
https://github.com/alibaba/fastjson
Very fast processor with no additional dependencies and full data binding.
- tags: java, json-processing
- :octocat: source code
Jolt
https://github.com/bazaarvoice/jolt
JSON to JSON transformation tool.
- tags: java, json-processing
- :octocat: source code
JsonPath
https://github.com/jayway/JsonPath
Extract data from JSON using XPATH-like syntax.
- tags: java, json-processing
- :octocat: source code
JsonSurfer
https://github.com/jsurfer/JsonSurfer
Streaming JsonPath processor dedicated to processing big and complicated JSON data.
- tags: java, json-processing
- :octocat: source code
Adopt Open JDK
OpenJDK builds which allows to choose between HotSpot and OpenJ9.
Avian
https://github.com/ReadyTalk/avian
JVM with JIT, AOT modes and iOS port.
- tags: java, jvm, jdk
- :octocat: source code
Corretto
https://aws.amazon.com/corretto
No-cost, multiplatform, production-ready distribution of OpenJDK by Amazon.
Graal
https://github.com/oracle/graal
Polyglot embeddable JVM.
- tags: java, jvm, jdk
- :octocat: source code
Liberica JDK
https://www.bell-sw.com/java.html
Built from OpenJDK, thoroughly tested and passed the JCK.
OpenJ9
https://github.com/eclipse/openj9
High performance, enterprise-calibre, flexibly licensed, openly-governed cross-platform JVM extending and augmenting the runtime technology components from the Eclipse OMR and OpenJDK project.
- tags: java, jvm, jdk
- :octocat: source code
Open JDK
Open JDK distributed by Oracle.
ParparVM
https://github.com/codenameone/CodenameOne/tree/master/vm
VM with non-blocking, concurrent GC for iOS.
- tags: java, jvm, jdk
- :octocat: source code
RedHat Open JDK
https://developers.redhat.com/products/openjdk/overview
RedHat's OpenJDK distribution.
Zulu
https://www.azul.com/downloads/zulu
OpenJDK builds for Windows, Linux, and Mac OS X.
Apache Log4j 2
https://logging.apache.org/log4j
Complete rewrite with a powerful plugin and configuration architecture.
Graylog
Open-source aggregator suited for extended role and permission management.
Kibana
https://www.elastic.co/products/kibana
Analyzes and visualizes log files. Some features require payment.
Logback
Robust logging library with interesting configuration options via Groovy.
Logbook
https://github.com/zalando/logbook
Extensible, open-source library for HTTP request and response logging.
- tags: java, logging
- :octocat: source code
Logstash
https://www.elastic.co/products/logstash
Tool for managing log files.
p6spy
https://github.com/p6spy/p6spy
Enables logging for all JDBC transactions without changes to the code.
- tags: java, logging
- :octocat: source code
SLF4J
Abstraction layer/simple logging facade.
tinylog
Lightweight logging framework with static logger class.
Tracer
https://github.com/zalando/tracer
Call tracing and log correlation in distributed systems.
- tags: java, logging
- :octocat: source code
Apache Flink
Fast, reliable, large-scale data processing engine.
- tags: java, machine-learning
Apache Mahout
Scalable algorithms focused on collaborative filtering, clustering and classification.
- tags: java, machine-learning
Apache Spark
Data analytics cluster-computing framework.
- tags: java, machine-learning
DatumBox
Provides several algorithms and pre-trained models for natural language processing.
- tags: java, machine-learning
DeepDive
Creates structured information from unstructured data and integrates it into an existing database.
- tags: java, machine-learning
Deeplearning4j
Distributed and multi-threaded deep learning library.
- tags: java, machine-learning
H2O
Analytics engine for statistics over big data.
- tags: java, machine-learning
JSAT
https://github.com/EdwardRaff/JSAT
Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution.
- tags: java, machine-learning
- :octocat: source code
Oryx 2
https://github.com/OryxProject/oryx
Framework for building real-time, large-scale machine learning applications. Includes end-to-end applications for collaborative filtering, classification, regression, and clustering.
- tags: java, machine-learning
- :octocat: source code
Smile
https://haifengl.github.io/smile
The Statistical Machine Intelligence and Learning Engine provides a set of machine learning algorithms and a visualization library.
- tags: java, machine-learning
Weka
https://www.cs.waikato.ac.nz/ml/weka
Collection of algorithms for data mining tasks ranging from pre-processing to visualization.
- tags: java, machine-learning
Aeron
https://github.com/real-logic/Aeron
Efficient, reliable, unicast and multicast message transport.
- tags: java, messaging
- :octocat: source code
Apache ActiveMQ
Message broker that implements JMS and converts synchronous to asynchronous communication.
Apache Camel
Glues together different transport APIs via Enterprise Integration Patterns.
Apache Kafka
High-throughput distributed messaging system.
Apache Pulsar
Distributed pub/sub-messaging system.
Apache RocketMQ
A fast, reliable, and scalable distributed messaging platform.
Apache Qpid
Apache Qpid makes messaging tools that speak AMQP and support many languages and platforms.
EventBus
https://github.com/greenrobot/EventBus
Simple publish/subscribe event bus.
- tags: java, messaging
- :octocat: source code
Hermes
Fast and reliable message broker built on top of Kafka.
JeroMQ
https://github.com/zeromq/jeromq
Implementation of ZeroMQ.
- tags: java, messaging
- :octocat: source code
Nakadi
https://github.com/zalando/nakadi
Provides a RESTful API on top of Kafka.
- tags: java, messaging
- :octocat: source code
RabbitMQ Java client
https://github.com/rabbitmq/rabbitmq-java-client
RabbitMQ client.
- tags: java, messaging
- :octocat: source code
Smack
https://github.com/igniterealtime/Smack
Cross-platform XMPP client library.
- tags: java, messaging
- :octocat: source code
NATS client
https://github.com/nats-io/java-nats
NATS client.
- tags: java, messaging
- :octocat: source code
Codename One
Cross-platform solution for writing native mobile apps.
Codename One
Cross-platform solution for writing native mobile apps.
CQEngine
https://github.com/npgall/cqengine
Ultra-fast, SQL-like queries on Java collections.
- tags: java, java
- :octocat: source code
CQEngine
https://github.com/npgall/cqengine
Ultra-fast, SQL-like queries on Java collections.
- tags: java, java
- :octocat: source code
Design Patterns
https://github.com/iluwatar/java-design-patterns
Implementation and explanation of the most common design patterns.
- tags: java
- :octocat: source code
Failsafe
https://github.com/jhalterman/failsafe
Simple failure handling with retries and circuit breakers.
- tags: java, java
- :octocat: source code
Failsafe
https://github.com/jhalterman/failsafe
Simple failure handling with retries and circuit breakers.
- tags: java, java
- :octocat: source code
FF4J
Feature Flags for Java.
- tags: java, java
- :octocat: source code
FF4J
Feature Flags for Java.
- tags: java, java
- :octocat: source code
FizzBuzz Enterprise Edition
https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition
No-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes.
- tags: java, java
- :octocat: source code
FizzBuzz Enterprise Edition
https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition
No-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes.
- tags: java, java
- :octocat: source code
J2ObjC
https://github.com/google/j2objc
Java-to-Objective-C translator for porting Android libraries to iOS.
- tags: java, java
- :octocat: source code
J2ObjC
https://github.com/google/j2objc
Java-to-Objective-C translator for porting Android libraries to iOS.
- tags: java, java
- :octocat: source code
JavaCV
https://github.com/bytedeco/javacv
Java interface to OpenCV, FFmpeg, and more.
- tags: java, java
- :octocat: source code
JavaCV
https://github.com/bytedeco/javacv
Java interface to OpenCV, FFmpeg, and more.
- tags: java, java
- :octocat: source code
JavaX
Reinventing and extending Java with a focus on simplicity.
JavaX
Reinventing and extending Java with a focus on simplicity.
JBake
Static website generator.
JBake
Static website generator.
JBot
https://github.com/ramswaroop/jbot
Framework for building chatbots.
- tags: java, java
- :octocat: source code
JBot
https://github.com/ramswaroop/jbot
Framework for building chatbots.
- tags: java, java
- :octocat: source code
JCuda
JCuda offers Java bindings for CUDA and CUDA-related libraries.
JCuda
JCuda offers Java bindings for CUDA and CUDA-related libraries.
Jimfs
https://github.com/google/jimfs
In-memory file system.
- tags: java, java
- :octocat: source code
Jimfs
https://github.com/google/jimfs
In-memory file system.
- tags: java, java
- :octocat: source code
Joda-Money
http://www.joda.org/joda-money
Basic currency and money classes and algorithms not provided by the JDK.
Joda-Money
http://www.joda.org/joda-money
Basic currency and money classes and algorithms not provided by the JDK.
JPad
Snippet runner.
JPad
Snippet runner.
LightAdmin
Pluggable CRUD UI library for rapid application development.
LightAdmin
Pluggable CRUD UI library for rapid application development.
Membrane Service Proxy
https://github.com/membrane/service-proxy
An open-source, reverse-proxy framework written in Java.
- tags: java, java
- :octocat: source code
Membrane Service Proxy
https://github.com/membrane/service-proxy
An open-source, reverse-proxy framework written in Java.
- tags: java, java
- :octocat: source code
MinimalFTP
https://github.com/Guichaguri/MinimalFTP
Lightweight, small and customizable FTP server.
- tags: java, java
- :octocat: source code
MinimalFTP
https://github.com/Guichaguri/MinimalFTP
Lightweight, small and customizable FTP server.
- tags: java, java
- :octocat: source code
Modern Java - A Guide to Java 8
https://github.com/winterbe/java8-tutorial
Popular Java 8 guide.
- tags: java
- :octocat: source code
Modernizer
https://github.com/andrewgaul/modernizer-maven-plugin
Detect uses of legacy Java APIs.
- tags: java, java
- :octocat: source code
Modernizer
https://github.com/andrewgaul/modernizer-maven-plugin
Detect uses of legacy Java APIs.
- tags: java, java
- :octocat: source code
Multi-OS Engine
https://software.intel.com/en-us/multi-os-engine
An open-source, cross-platform engine to develop native mobile (iOS, Android, etc.) apps.
Multi-OS Engine
https://software.intel.com/en-us/multi-os-engine
An open-source, cross-platform engine to develop native mobile (iOS, Android, etc.) apps.
OpenRefine
Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases.
OpenRefine
Tool for working with messy data: cleaning, transforming, extending it with web services and linking it to databases.
PipelinR
https://github.com/sizovs/pipelinr
A lightweight command processing pipeline ❍ ⇢ ❍ ⇢ ❍ for your Java awesome app. - sizovs/PipelinR
- tags: java, java
- :octocat: source code
PipelinR
https://github.com/sizovs/pipelinr
A lightweight command processing pipeline ❍ ⇢ ❍ ⇢ ❍ for your Java awesome app. - sizovs/PipelinR
- tags: java, java
- :octocat: source code
Polyglot for Maven
https://github.com/takari/polyglot-maven
Extensions for Maven 3.3.1+ that allows writing the POM model in dialects other than XML.
- tags: java, java
- :octocat: source code
Polyglot for Maven
https://github.com/takari/polyglot-maven
Extensions for Maven 3.3.1+ that allows writing the POM model in dialects other than XML.
- tags: java, java
- :octocat: source code
Smooks
https://github.com/smooks/smooks
Extensible framework for building applications that process data which means bindings, transformations, message processing and enrichment.
- tags: java, java
- :octocat: source code
Smooks
https://github.com/smooks/smooks
Extensible framework for building applications that process data which means bindings, transformations, message processing and enrichment.
- tags: java, java
- :octocat: source code
Togglz
Implementation of the Feature Toggles pattern.
Togglz
Implementation of the Feature Toggles pattern.
TypeTools
https://github.com/jhalterman/typetools
Tools for resolving generic types.
- tags: java, java
- :octocat: source code
TypeTools
https://github.com/jhalterman/typetools
Tools for resolving generic types.
- tags: java, java
- :octocat: source code
XMLBeam
https://github.com/SvenEwald/xmlbeam
Processes XML by using annotations or XPath within code.
- tags: java, java
- :octocat: source code
XMLBeam
https://github.com/SvenEwald/xmlbeam
Processes XML by using annotations or XPath within code.
- tags: java, java
- :octocat: source code
OctoLinker
https://github.com/OctoLinker/browser-extension
Browser extension which allows to navigate through code on GitHub more efficiently.
- tags: java, java
- :octocat: source code
OctoLinker
https://github.com/OctoLinker/browser-extension
Browser extension which allows to navigate through code on GitHub more efficiently.
- tags: java, java
- :octocat: source code
Apollo
https://spotify.github.io/apollo
Libraries for writing composable microservices.
- tags: java, microservices
consul-api
https://github.com/Ecwid/consul-api
Client for the Consul API: a distributed, highly available and datacenter-aware registry/discovery service.
- tags: java, microservices
- :octocat: source code
Helidon
Two-style approach for writing microservices: Functional-reactive and as an implementation of MicroProfile.
- tags: java, microservices
Lagom
https://www.lightbend.com/lagom
Framework for creating microservice-based systems.
- tags: java, microservices
Micronaut
Modern full-stack framework with focus on modularity, minimal memory footprint and startup time.
- tags: java, microservices
[AppDynamics 
Performance monitor.
- tags: java, monitoring
Automon
https://github.com/stevensouza/automon
Combines the power of AOP with monitoring and/or logging tools.
- tags: java, monitoring
- :octocat: source code
[BugSnag 
Exception and error monitoring with an integration of several third party tools for a better workflow and a free hobbyist tier.
- tags: java, monitoring
LeakCanary
https://github.com/square/leakcanary
Memory leak detection.
- tags: java, monitoring
- :octocat: source code
Failsafe Actuator
https://github.com/zalando-incubator/failsafe-actuator
Out of the box monitoring of Failsafe Circuit Breaker in Spring-Boot environment.
- tags: java, monitoring
- :octocat: source code
Glowroot
Open-source Java APM.
- tags: java, monitoring
inspectIT
Captures detailed run-time information via hooks that can be changed on the fly. It supports tracing over multiple systems via the OpenTracing API and can correlate the data with end user monitoring.
- tags: java, monitoring
[Instrumental 
Real-time Java application performance monitoring. A commercial service with free development accounts.
- tags: java, monitoring
JavaMelody
https://github.com/javamelody/javamelody
Performance monitoring and profiling.
- tags: java, monitoring
- :octocat: source code
Jaeger client
https://github.com/jaegertracing/jaeger-client-java
Jaeger client.
- tags: java, monitoring
- :octocat: source code
jmxtrans
https://github.com/jmxtrans/jmxtrans
Connect to multiple JVMs and query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVM attributes. Supports different output wri...
- tags: java, monitoring
- :octocat: source code
Jolokia
JMX over REST.
- tags: java, monitoring
Kamon
Tool for monitoring applications running on the JVM.
- tags: java, monitoring
Metrics
Expose metrics via JMX or HTTP and send them to a database.
- tags: java, monitoring
[New Relic 
Performance monitor.
- tags: java, monitoring
[Datadog 
https://docs.datadoghq.com/tracing/setup/java/
Modern monitoring & analytics.
- tags: java, monitoring
nudge4j
https://github.com/lorenzoongithub/nudge4j
Remote developer console from the browser for Java 8 via bytecode injection.
- tags: java, monitoring
- :octocat: source code
[OverOps 
In-production error monitoring and debugging.
- tags: java, monitoring
Pinpoint
https://github.com/naver/pinpoint
Open-source APM tool.
- tags: java, monitoring
- :octocat: source code
Prometheus
Provides a multi-dimensional data model, DSL, autonomous server nodes and much more.
- tags: java, monitoring
[SPM 
Performance monitor with distributing transaction tracing for JVM apps.
- tags: java, monitoring
Stagemonitor
https://github.com/stagemonitor/stagemonitor
Open-source performance monitoring and transaction tracing for JVM apps.
- tags: java, monitoring
- :octocat: source code
Sysmon
https://github.com/palantir/Sysmon
Lightweight platform monitoring tool for Java VMs.
- tags: java, monitoring
- :octocat: source code
zipkin
Distributed tracing system which gathers timing data needed to troubleshoot latency problems in microservice architectures.
- tags: java, monitoring
JavaCPP
https://github.com/bytedeco/javacpp
Provides efficient and easy access to native C++.
- tags: java, native
- :octocat: source code
JNA
https://github.com/java-native-access/jna
Work with native libraries without writing JNI. Also provides interfaces to common system libraries.
- tags: java, native
- :octocat: source code
JNR
https://github.com/jnr/jnr-ffi
Work with native libraries without writing JNI. Also provides interfaces to common system libraries. Same goals as JNA, but faster, and serves as the basis for the upcoming [Project Panama](http://ope...
- tags: java, native
- :octocat: source code
CogCompNLP
https://github.com/CogComp/cogcomp-nlp
Provides common annotators for plain text input.
- tags: java, nlp
- :octocat: source code
CoreNLP
https://nlp.stanford.edu/software/corenlp.shtml
Provides a set of fundamental tools for tasks like tagging, named entity recognition, and sentiment analysis.
DKPro
Collection of reusable NLP tools for linguistic pre-processing, machine learning, lexical resources, etc.
Lingua
https://github.com/pemistahl/lingua
Natural language detection library, especially suited for short paragraphs of text.
- tags: java, nlp
- :octocat: source code
LingPipe
Toolkit for tasks ranging from POS tagging to sentiment analysis.
AkkaGRPC
https://github.com/akka/akka-grpc
Support for building streaming gRPC servers and clients on top of Akka Streams.
- tags: java, networking
- :octocat: source code
Comsat
https://github.com/puniverse/comsat
Integrates standard Java web-related APIs with Quasar fibers and actors.
- tags: java, networking
- :octocat: source code
Dubbo
https://github.com/alibaba/dubbo
High-performance RPC framework.
- tags: java, networking
- :octocat: source code
Finagle
https://github.com/twitter/finagle
Extensible RPC system for constructing high-concurrency servers. It implements uniform client and server APIs for several protocols, and is protocol-agnostic to simplify implementation of new protocol...
- tags: java, networking
- :octocat: source code
Grizzly
https://javaee.github.io/grizzly
NIO framework. Used as a network layer in Glassfish.
- tags: java, networking
gRPC
https://github.com/grpc/grpc-java
RPC framework based on protobuf and HTTP/2.
- tags: java, networking
- :octocat: source code
KryoNet
https://github.com/EsotericSoftware/kryonet
Provides a clean and simple API for efficient TCP and UDP client/server network communication using NIO and Kryo.
- tags: java, networking
- :octocat: source code
MINA
Abstract, event-driven async I/O API for network operations over TCP/IP and UDP/IP via Java NIO.
- tags: java, networking
Netty
Framework for building high-performance network applications.
- tags: java, networking
Nifty
https://github.com/facebook/nifty
Implementation of Thrift clients and servers on Netty.
- tags: java, networking
- :octocat: source code
sshj
https://github.com/hierynomus/sshj
Programatically use SSH, SCP or SFTP.
- tags: java, networking
- :octocat: source code
TLS Channel
https://github.com/marianobarrios/tls-channel
Implements a ByteChannel interface over SSLEngine, enabling easy-to-use (socket-like) TLS.
- tags: java, networking
- :octocat: source code
Undertow
Web server providing both blocking and non-blocking APIs based on NIO. Used as a network layer in WildFly.
- tags: java, networking
urnlib
https://github.com/slub/urnlib
Represent, parse and encode URNs, as in RFC 2141.
- tags: java, networking
- :octocat: source code
Apache Cayenne
Provides a clean, static API for data access. Also includes a GUI Modeler for working with database mappings, and DB reverse engineering and generation.
Ebean
Provides simple and fast data access.
EclipseLink
https://www.eclipse.org/eclipselink
Supports a number of persistence standards: JPA, JAXB, JCA and SDO.
Hibernate
Robust and widely used, with an active community.
MyBatis
http://www.mybatis.org/mybatis-3
Couples objects with stored procedures or SQL statements.
SimpleFlatMapper
https://github.com/arnaudroger/SimpleFlatMapper
Simple database and CSV mapper.
- tags: java, orm
- :octocat: source code
[AWS Elastic Beanstalk 
https://aws.amazon.com/elasticbeanstalk
AWS-based, with support for Tomcat and Jetty.
[AWS Lambda 
Serverless computation.
[Google App Engine 
PaaS on Google's infrastructure.
[Heroku 
Abstract computing environments.
[Jelastic 
Supports Tomcat, Jetty, GlassFish, JBoss, TomEE and WildFly.
[OpenShift Enterprise 
On-premise solution.
Apache FOP
https://xmlgraphics.apache.org/fop
Creates PDFs from XSL-FO.
Apache PDFBox
Toolbox for creating and manipulating PDFs.
Dynamic Jasper
Abstraction layer to JasperReports.
DynamicReports
Simplifies JasperReports.
flyingsaucer
https://github.com/flyingsaucerproject/flyingsaucer
XML/XHTML and CSS 2.1 renderer.
- tags: java, pdf
- :octocat: source code
[iText 
Creates PDF files programmatically.
JasperReports
https://community.jaspersoft.com/project/jasperreports-library
Complex reporting engine.
[fastThread 
Analyze and visualize thread dumps with a free cloud-based upload interface.
- tags: java, performance-analysis
[GCeasy 
Tool to analyze and visualize GC logs. It provides a free cloud-based upload interface.
- tags: java, performance-analysis
honest-profiler
https://github.com/RichardWarburton/honest-profiler
A low-overhead, bias-free sampling profiler.
- tags: java, performance-analysis
- :octocat: source code
jHiccup
https://github.com/giltene/jHiccup
Logs and records platform JVM stalls.
- tags: java, performance-analysis
- :octocat: source code
JITWatch
https://github.com/AdoptOpenJDK/jitwatch
Analyze the JIT compiler optimisations made by the HotSpot JVM.
- tags: java, performance-analysis
- :octocat: source code
JMH
http://openjdk.java.net/projects/code-tools/jmh
a Java harness for building, running, and analysing nano/micro/milli/macro benchmarks written in Java and other languages targeting the JVM.
- tags: java, performance-analysis
[JProfiler 
https://www.ej-technologies.com/products/jprofiler/overview.html
Database profiling for JDBC, JPA and NoSQL, with JEE support.
- tags: java, performance-analysis
LatencyUtils
https://github.com/LatencyUtils/LatencyUtils
Utilities for latency measurement and reporting.
- tags: java, performance-analysis
- :octocat: source code
[XRebel 
https://zeroturnaround.com/software/xrebel
Real-time profiling for web applications, with an in-browser widget.
- tags: java, performance-analysis
[YourKit Java Profiler 
https://www.yourkit.com/features
Profiler for any application running on the JVM.
- tags: java, performance-analysis
BCEL
http://commons.apache.org/proper/commons-bcel
Byte Code Engineering Library - analyze, create, and manipulate Java class files.
- tags: java, platform, apache-commons
BeanUtils
http://commons.apache.org/proper/commons-beanutils
Easy-to-use wrappers around the Java reflection and introspection APIs.
- tags: java, platform, apache-commons
BeanUtils2
http://commons.apache.org/sandbox/commons-beanutils2
Redesign of Commons BeanUtils.
- tags: java, platform, apache-commons
BSF
http://commons.apache.org/proper/commons-bsf
Bean Scripting Framework - interface to scripting languages, including JSR-223.
- tags: java, platform, apache-commons
Chain
http://commons.apache.org/proper/commons-chain
Chain of Responsibility pattern implementation.
- tags: java, platform, apache-commons
ClassScan
http://commons.apache.org/sandbox/commons-classscan
Find Class interfaces, methods, fields, and annotations without loading.
- tags: java, platform, apache-commons
CLI
http://commons.apache.org/proper/commons-cli
Command-line arguments parser.
- tags: java, platform, apache-commons
CLI2
http://commons.apache.org/sandbox/commons-cli2
Redesign of Commons CLI.
- tags: java, platform, apache-commons
Codec
http://commons.apache.org/proper/commons-codec
General encoding/decoding algorithms (for example phonetic, base64, URL).
- tags: java, platform, apache-commons
Collections
http://commons.apache.org/proper/commons-collections
Extends or augments the Java Collections Framework.
- tags: java, platform, apache-commons
Compress
http://commons.apache.org/proper/commons-compress
Defines an API for working with tar, zip and bzip2 files.
- tags: java, platform, apache-commons
Configuration
http://commons.apache.org/proper/commons-configuration
Reading of configuration/preferences files in various formats.
- tags: java, platform, apache-commons
Convert
http://commons.apache.org/sandbox/commons-convert
Commons-Convert aims to provide a single library dedicated to the task of converting an object of one type to another.
- tags: java, platform, apache-commons
CSV
http://commons.apache.org/proper/commons-csv
Component for reading and writing comma separated value files.
- tags: java, platform, apache-commons
Daemon
http://commons.apache.org/proper/commons-daemon
Alternative invocation mechanism for unix-daemon-like java code.
- tags: java, platform, apache-commons
DBCP
http://commons.apache.org/proper/commons-dbcp
Database connection pooling services.
- tags: java, platform, apache-commons
DbUtils
http://commons.apache.org/proper/commons-dbutils
JDBC helper library.
- tags: java, platform, apache-commons
Digester
http://commons.apache.org/proper/commons-digester
XML-to-Java-object mapping utility.
- tags: java, platform, apache-commons
http://commons.apache.org/proper/commons-email
Library for sending e-mail from Java.
- tags: java, platform, apache-commons
Exec
http://commons.apache.org/proper/commons-exec
API for dealing with external process execution and environment management in Java.
- tags: java, platform, apache-commons
FileUpload
http://commons.apache.org/proper/commons-fileupload
File upload capability for your servlets and web applications.
- tags: java, platform, apache-commons
Finder
http://commons.apache.org/sandbox/commons-finder
Java library inspired by the UNIX find command.
- tags: java, platform, apache-commons
Flatfile
http://commons.apache.org/sandbox/commons-flatfile
Java library for working with flat data structures.
- tags: java, platform, apache-commons
Functor
http://commons.apache.org/proper/commons-functor
A functor is a function that can be manipulated as an object, or an object representing a single, generic function.
- tags: java, platform, apache-commons
Graph
http://commons.apache.org/sandbox/commons-graph
A general purpose Graph APIs and algorithms.
- tags: java, platform, apache-commons
I18n
http://commons.apache.org/sandbox/commons-i18n
Adds the feature of localized message bundles that consist of one or many localized texts that belong together.
- tags: java, platform, apache-commons
Id
http://commons.apache.org/sandbox/commons-id
Id is a component used to generate identifiers.
- tags: java, platform, apache-commons
Imaging
http://commons.apache.org/proper/commons-imaging
A pure-Java image library.
- tags: java, platform, apache-commons
IO
http://commons.apache.org/proper/commons-io
Collection of I/O utilities.
- tags: java, platform, apache-commons
Javaflow
http://commons.apache.org/sandbox/commons-javaflow
Continuation implementation to capture the state of the application.
- tags: java, platform, apache-commons
JCI
http://commons.apache.org/proper/commons-jci
Java Compiler Interface.
- tags: java, platform, apache-commons
JCS
http://commons.apache.org/proper/commons-jcs
Java Caching System.
- tags: java, platform, apache-commons
Jelly
http://commons.apache.org/proper/commons-jelly
XML based scripting and processing engine.
- tags: java, platform, apache-commons
Jexl
http://commons.apache.org/proper/commons-jexl
Expression language which extends the Expression Language of the JSTL.
- tags: java, platform, apache-commons
JNet
http://commons.apache.org/sandbox/commons-jnet
JNet allows to use dynamically register url stream handlers through the java.net API.
- tags: java, platform, apache-commons
JXPath
http://commons.apache.org/proper/commons-jxpath
Utilities for manipulating Java Beans using the XPath syntax.
- tags: java, platform, apache-commons
Lang
http://commons.apache.org/proper/commons-lang
Provides extra functionality for classes in java.lang.
- tags: java, platform, apache-commons
Logging
https://en.wikipedia.org/wiki/Apache_Commons_Logging
Wrapper around a variety of logging API implementations.
- tags: java, platform, apache-commons
Math
http://commons.apache.org/proper/commons-math
Lightweight, self-contained mathematics and statistics components.
- tags: java, platform, apache-commons
Monitoring
http://commons.apache.org/sandbox/commons-monitoring
Monitoring aims to provide a simple but extensible monitoring solution for Java applications.
- tags: java, platform, apache-commons
Nabla
http://commons.apache.org/sandbox/commons-nabla
Nabla provides automatic differentiation classes that can generate derivative of any function implemented in the Java language.
- tags: java, platform, apache-commons
Net
http://commons.apache.org/proper/commons-net
Collection of network utilities and protocol implementations.
- tags: java, platform, apache-commons
OGNL
http://commons.apache.org/proper/commons-ognl
An Object-Graph Navigation Language.
- tags: java, platform, apache-commons
OpenPGP
http://commons.apache.org/sandbox/commons-openpgp
Interface to signing and verifying data using OpenPGP.
- tags: java, platform, apache-commons
Performance
http://commons.apache.org/sandbox/commons-performance
A small framework for microbenchmark clients, with implementations for Commons DBCP and Pool.
- tags: java, platform, apache-commons
Pipeline
http://commons.apache.org/sandbox/commons-pipeline
Provides a set of pipeline utilities designed around work queues that run in parallel to sequentially process data objects.
- tags: java, platform, apache-commons
Pool
http://commons.apache.org/proper/commons-pool
Generic object pooling component.
- tags: java, platform, apache-commons
Proxy
http://commons.apache.org/proper/commons-proxy
Library for creating dynamic proxies.
- tags: java, platform, apache-commons
RDF
https://commons.apache.org/proper/commons-rdf
Common implementation of RDF 1.1 that could be implemented by systems on the JVM.
- tags: java, platform, apache-commons
RNG
https://commons.apache.org/proper/commons-rng
Commons Rng provides implementations of pseudo-random numbers generators.
- tags: java, platform, apache-commons
SCXML
http://commons.apache.org/proper/commons-scxml
An implementation of the State Chart XML specification aimed at creating and maintaining a Java SCXML engine.
- tags: java, platform, apache-commons
Validator
http://commons.apache.org/proper/commons-validator
Framework to define validators and validation rules in an xml file.
- tags: java, platform, apache-commons
VFS
http://commons.apache.org/proper/commons-vfs
Virtual File System component for treating files, FTP, SMB, ZIP and such like as a single logical file system.
- tags: java, platform, apache-commons
Weaver
http://commons.apache.org/proper/commons-weaver
Provides an easy way to enhance (weave) compiled bytecode.
- tags: java, platform, apache-commons
CUBA Platform
High-level framework for developing enterprise applications with a rich web interface, based on Spring, EclipseLink and Vaadin.
CUBA Platform
High-level framework for developing enterprise applications with a rich web interface, based on Spring, EclipseLink and Vaadin.
Light-Java
https://github.com/networknt/light-java
A fast, lightweight and productive microservices framework with built-in security.
- tags: java
- :octocat: source code
Orienteer
https://github.com/OrienteerBAP/Orienteer
Open-source business application platform for rapid configuration/development of CRM, ERP, LMS and other applications.
- tags: java, java
- :octocat: source code
Orienteer
https://github.com/OrienteerBAP/Orienteer
Open-source business application platform for rapid configuration/development of CRM, ERP, LMS and other applications.
- tags: java, java
- :octocat: source code
Spring
Provides many packages for dependency injection, aspect-oriented programming, security, etc.
Spring
Provides many packages for dependency injection, aspect-oriented programming, security, etc.
ch.vorburger.exec
https://github.com/vorburger/ch.vorburger.exec
Convenient API around Apache Commons Exec.
- tags: java, processes
- :octocat: source code
zt-exec
https://github.com/zeroturnaround/zt-exec
Provides a unified API to Apache Commons Exec and ProcessBuilder.
- tags: java, processes
- :octocat: source code
zt-process-killer
https://github.com/zeroturnaround/zt-process-killer
Stops processes started from Java or the system processes via PID.
- tags: java, processes
- :octocat: source code
Akka
Toolkit and runtime for building concurrent, distributed, fault-tolerant and event-driven applications.
Reactive Streams
https://github.com/reactive-streams/reactive-streams-jvm
Provides a standard for asynchronous stream processing with non-blocking backpressure.
- tags: java, reactive
- :octocat: source code
Reactor
Library for building reactive fast-data applications.
vert.x
Polyglot event-driven application framework.
Dropwizard
https://dropwizard.github.io/dropwizard
Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics.
Elide
Opinionated framework for JSON- or GraphQL-APIs based on a JPA data model.
javalin
Javalin is just a few thousand lines of code on top of Jetty, which means its performance is almost equivalent to pure Jetty.
Jersey
JAX-RS reference implementation.
Microserver
https://github.com/aol/micro-server
Microserver is a Java 8 native, zero configuration, standards based, battle hardened library to run Java Rest Microservices via a standard Java main class. Supporting pure Microservice or Micro-monoli...
- tags: java, rest
- :octocat: source code
Rapidoid
A simple, secure and extremely fast framework consisting of an embedded HTTP server, GUI components and dependency injection.
rest.li
https://github.com/linkedin/rest.li
Framework for building robust, scalable RESTful architectures using typesafe bindings and asynchronous, non-blocking IO with an end-to-end developer workflow that promotes clean practices, uniform int...
- tags: java, rest
- :octocat: source code
RESTEasy
Fully certified and portable implementation of the JAX-RS specification.
RestExpress
https://github.com/RestExpress/RestExpress
Thin wrapper on the JBoss Netty HTTP stack that provides scaling and performance.
- tags: java, rest
- :octocat: source code
Restlet Framework
https://github.com/restlet/restlet-framework-java
Pioneering framework with powerful routing and filtering capabilities, and a unified client and server API.
- tags: java, rest
- :octocat: source code
Spark
Sinatra inspired framework.
Crnk
Implementation of the JSON API specification to build resource-oriented REST endpoints with sorting, filtering, paging, linking, object graphs, type-safety, bulk updates, integrations and more.
Swagger
Standard, language-agnostic interface to REST APIs.
DataMelt
Environment for scientific computation, data analysis and data visualization.
Erdos
https://github.com/Erdos-Graph-Framework/Erdos
Modular, light and easy graph framework for theoretic algorithms.
- tags: java, science
- :octocat: source code
GraphStream
http://graphstream-project.org
Library for modeling and analyzing dynamic graphs.
JFreeChart
http://www.jfree.org/jfreechart
2D chart library for Swing, JavaFX and server-side applications.
JGraphT
https://github.com/jgrapht/jgrapht
Graph library that provides mathematical graph-theory objects and algorithms.
- tags: java, science
- :octocat: source code
JGraphX
https://github.com/jgraph/jgraphx
Library for visualizing (mainly Swing) and interacting with node-edge graphs.
- tags: java, science
- :octocat: source code
Mines Java Toolkit
https://github.com/MinesJTK/jtk
Library for geophysical scientific computation, visualization and digital signal analysis.
- tags: java, science
- :octocat: source code
Morpheus
http://www.zavtech.com/morpheus/docs
Provides a versatile two-dimensional memory efficient tabular data structure called a DataFrame to enable efficient in-memory analytics for scientific computing on the JVM.
Orson-Charts
https://github.com/jfree/orson-charts
Generates a wide variety of 3D charts that can be displayed with Swing and JavaFX or exported to PDF, SVG, PNG and JPEG.
- tags: java, science
- :octocat: source code
Tablesaw
https://github.com/lwhite1/tablesaw
Includes a data-frame, an embedded column store, and hundreds of methods to transform, summarize, or filter data.
- tags: java, science
- :octocat: source code
XChart
https://github.com/knowm/XChart
A light-weight library for plotting data. Many customizable chart types are available.
- tags: java, science
- :octocat: source code
Apache Lucene
High-performance, full-featured, cross-platform, text search engine library.
Apache Solr
https://lucene.apache.org/solr
Enterprise search engine optimized for high-volume traffic.
Elasticsearch
Distributed, multitenant-capable, full-text search engine with a RESTful web interface and schema-free JSON documents.
Indexer4j
https://github.com/haeungun/indexer4j
Simple and light full text indexing and searching library.
- tags: java, search
- :octocat: source code
Apache Shiro
Performs authentication, authorization, cryptography and session management.
Bouncy Castle
https://www.bouncycastle.org/java.html
All-purpose cryptographic library and JCA provider offering a wide range of functions, from basic helpers to PGP/SMIME operations.
Cryptomator
Multiplatform, transparent, client-side encryption of files in the cloud.
Hdiv
Runtime application that repels application security risks included in the OWASP Top 10, including SQL injection, cross-site scripting, cross-site request forgery, data tampering, and brute force atta...
- tags: java, security
- :octocat: source code
jjwt
JSON web token for Java and Android.
- tags: java, security
- :octocat: source code
Jwks RSA
https://github.com/auth0/jwks-rsa-java
JSON Web Key Set parser.
- tags: java, security
- :octocat: source code
Kalium
https://github.com/abstractj/kalium
Binding for the Networking and Cryptography (NaCl) library.
- tags: java, security
- :octocat: source code
Keycloak
Integrated SSO and IDM for browser apps and RESTful web services.
Keyczar
https://github.com/google/keyczar
Easy-to-use, safe encryption framework with key versioning.
- tags: java, security
- :octocat: source code
Keywhiz
https://github.com/square/keywhiz
System for distributing and managing secrets.
- tags: java, security
- :octocat: source code
Nbvcxz
https://github.com/GoSimpleLLC/nbvcxz
Advanced password strength estimation.
- tags: java, security
- :octocat: source code
OACC
Provides permission-based authorization services.
pac4j
https://github.com/pac4j/pac4j
Security engine.
- tags: java, security
- :octocat: source code
PicketLink
Umbrella project for security and identity management.
SecurityBuilder
https://github.com/tersesystems/securitybuilder
Fluent Builder API for JCA and JSSE classes and especially X.509 certificates.
- tags: java, security
- :octocat: source code
Themis
https://github.com/cossacklabs/themis
Multi-platform high-level cryptographic library provides easy-to-use encryption for protecting sensitive data: secure messaging with forward secrecy, secure data storage (AES256GCM); suits for buildin...
- tags: java, security
- :octocat: source code
Tink
Provides a simple and misuse-proof API for common cryptographic tasks.
- tags: java, security
- :octocat: source code
Vault
Secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets. It handles leasing, key revocation, key rolling, and auditing. Through a unified API, user...
FlatBuffers
https://github.com/google/flatbuffers
Memory-efficient serialization library that can access serialized data without unpacking and parsing it.
- tags: java, serialization
- :octocat: source code
FST
https://github.com/RuedigerMoeller/fast-serialization
JDK-compatible, high-performance object graph serialization.
- tags: java, serialization
- :octocat: source code
Kryo
https://github.com/EsotericSoftware/kryo
Fast and efficient object graph serialization framework.
- tags: java, serialization
- :octocat: source code
MessagePack
https://github.com/msgpack/msgpack-java
Efficient binary serialization format.
- tags: java, serialization
- :octocat: source code
PHP Serializer
https://github.com/marcospassos/java-php-serializer
Serializing objects in the PHP serialization format.
- tags: java, serialization
- :octocat: source code
Apache Tomcat
Robust, all-round server for Servlet and JSP.
Apache TomEE
Tomcat plus Java EE.
Jetty
Provides a Web server and javax.servlet container, plus support for HTTP/2, WebSocket, OSGi, JMX, JNDI, JAAS and many other integrations.
nanohttpd
https://github.com/NanoHttpd/nanohttpd
Tiny, easily embeddable HTTP server.
- tags: java, server
- :octocat: source code
WebSphere Liberty
https://developer.ibm.com/wasdev
Lightweight, modular server developed by IBM.
WildFly
Formerly known as JBoss and developed by Red Hat with extensive Java EE support.
Handlebars.java
https://jknack.github.io/handlebars.java
Logicless and semantic Mustache templates.
- tags: java, template-engine
Jade4J
https://github.com/neuland/jade4j
Implementation of Pug (formerly known as Jade).
- tags: java, template-engine
- :octocat: source code
Jtwig
Modular, configurable and fully tested template engine.
- tags: java, template-engine
Pebble
http://www.mitchellbosecke.com/pebble/home
Inspired by Twig and separates itself with its inheritance feature and its easy-to-read syntax. It ships with built-in autoescaping for security and it includes integrated support for internationaliza...
- tags: java, template-engine
Thymeleaf
Aims to be a substitute for JSP and works for XML files.
- tags: java, template-engine
Rocker
https://github.com/fizzed/rocker
Optimized, memory efficient and speedy template engine producing statically typed, plain objects.
- tags: java, template-engine
- :octocat: source code
Awaitility
https://github.com/jayway/awaitility
DSL for synchronizing asynchronous operations.
- tags: java, testing, asynchronous
- :octocat: source code
ConcurrentUnit
https://github.com/jhalterman/concurrentunit
Toolkit for testing multi-threaded and asynchronous applications.
- tags: java, testing, asynchronous
- :octocat: source code
GreenMail
http://www.icegreen.com/greenmail
In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL.
- tags: java, testing, asynchronous
Hoverfly Java
https://github.com/SpectoLabs/hoverfly-java
Native bindings for Hoverfly, a proxy which allows you to simulate HTTP services.
- tags: java, testing, asynchronous
- :octocat: source code
REST Assured
https://github.com/jayway/rest-assured
DSL for easy testing of REST/HTTP services.
- tags: java, testing, asynchronous
- :octocat: source code
Cucumber
https://github.com/cucumber/cucumber-jvm
Provides a way to describe features in a plain language which customers can understand.
- tags: java, testing, bdd
- :octocat: source code
Cukes-REST
https://github.com/ctco/cukes-rest
A collection of Gherkin steps for REST-service testing using Cucumber.
- tags: java, testing, bdd
- :octocat: source code
J8Spec
https://github.com/j8spec/j8spec
Follows a Jasmine-like syntax.
- tags: java, testing, bdd
- :octocat: source code
JBehave
Extensively configurable framework that describes stories.
JGiven
Provides a fluent API which allows for simpler composition.
Lamdba Behave
https://github.com/RichardWarburton/lambda-behave
Aims to provide a fluent API to write tests in long and descriptive sentences that read like plain English.
- tags: java, testing, bdd
- :octocat: source code
Beanmother
https://github.com/keepcosmos/beanmother
Sets up beans from YAML fixtures.
- tags: java, testing, fixtures
- :octocat: source code
Fixture Factory
https://github.com/six2six/fixture-factory
Generates fake objects from a template.
- tags: java, testing, fixtures
- :octocat: source code
JFairy
https://github.com/Codearte/jfairy
Fake data generator.
- tags: java, testing, fixtures
- :octocat: source code
Randomized Testing
https://github.com/randomizedtesting/randomizedtesting
JUnit test runner and plugins for running JUnit tests with pseudo-randomness.
- tags: java, testing, fixtures
- :octocat: source code
Java Faker
https://github.com/DiUS/java-faker
A port of Ruby's fake data generator.
- tags: java, testing, fixtures
- :octocat: source code
ArchUnit
https://github.com/TNG/ArchUnit
Test library for specifying and asserting architecture rules.
- tags: java, testing, frameworks
- :octocat: source code
Apache JMeter
Functional testing and performance measurements.
- tags: java, testing, frameworks
Arquillian
Integration and functional testing platform for Java EE containers.
- tags: java, testing, frameworks
Citrus
Integration testing framework that focuses on both client- and server-side messaging.
- tags: java, testing, frameworks
Gatling
Load testing tool designed for ease of use, maintainability and high performance.
- tags: java, testing, frameworks
JUnit
Common testing framework.
- tags: java, testing, frameworks
Pact JVM
https://github.com/DiUS/pact-jvm
Consumer-driven contract testing.
- tags: java, testing, frameworks
- :octocat: source code
PIT
Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test suites.
- tags: java, testing, frameworks
AssertJ
https://joel-costigliola.github.io/assertj
Fluent assertions that improve readability.
JSONAssert
http://jsonassert.skyscreamer.org
Simplifies testing JSON strings.
Truth
https://github.com/google/truth
Google's assertion and proposition framework.
- tags: java, testing, matchers
- :octocat: source code
Mutability Detector
https://github.com/MutabilityDetector/MutabilityDetector
Reports whether instances of a given class are immutable.
- tags: java, testing, testing
- :octocat: source code
raml-tester
https://github.com/nidi3/raml-tester
Tests if a request/response matches a given RAML definition.
- tags: java, testing, testing
- :octocat: source code
TestContainers
https://github.com/testcontainers/testcontainers-java
Provides throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
- tags: java, testing, testing
- :octocat: source code
pojo-tester
Automatically performs tests on basic POJO methods.
JMockit
Integration testing, API mocking and faking, and code coverage.
Mockito
https://github.com/mockito/mockito
Mocking framework that lets you write tests with a clean and simple API.
- tags: java, testing, mocking
- :octocat: source code
MockServer
Allows mocking of systems integrated with HTTPS.
Moco
https://github.com/dreamhead/moco
Concise web services for stubs and mocks.
- tags: java, testing, mocking
- :octocat: source code
PowerMock
https://github.com/jayway/powermock
Mocks static methods, constructors, final classes and methods, private methods, and removal of static initializers.
- tags: java, testing, mocking
- :octocat: source code
WireMock
Stubs and mocks web services.
Burst
https://github.com/square/burst
A unit testing library for varying test data.
- tags: java, testing, parameterization
- :octocat: source code
junit-dataprovider
https://github.com/TNG/junit-dataprovider
A TestNG-like data provider/runner for JUnit.
- tags: java, testing, parameterization
- :octocat: source code
JUnitParams
https://pragmatists.github.io/JUnitParams
Creates readable and maintainable parametrised tests.
- tags: java, testing, parameterization
bucket4j
https://github.com/vladimir-bukhtoyarov/bucket4j
Rate limiting library based on token-bucket algorithm.
- tags: java, utility
- :octocat: source code
cactoos
Collection of object-oriented primitives.
CRaSH
Provides a shell into a JVM that's running CRaSH. Used by Spring Boot and others.
Dex
https://github.com/PatMartin/Dex
Java/JavaFX tool capable of powerful ETL and data visualization.
- tags: java, utility
- :octocat: source code
Embulk
Bulk data loader that helps data transfer between various databases, storages, file formats, and cloud services.
fswatch
https://github.com/vorburger/ch.vorburger.fswatch
Micro library to watch for directory file system changes, simplifying java.nio.file.WatchService
- tags: java, utility
- :octocat: source code
Gephi
https://github.com/gephi/gephi
Cross-platform for visualizing and manipulating large graph networks.
- tags: java, utility
- :octocat: source code
JADE
Framework and environment for building and debugging multi-agent systems.
JavaVerbalExpressions
https://github.com/VerbalExpressions/JavaVerbalExpressions
Library that helps with constructing difficult regular expressions.
- tags: java, utility
- :octocat: source code
JGit
A lightweight, pure Java library implementing the Git version control system.
minio-java
https://github.com/minio/minio-java
Provides simple APIs to access any Amazon S3-compatible object storage server.
- tags: java, utility
- :octocat: source code
Protégé
Provides an ontology editor and a framework to build knowledge-based systems.
Underscore-java
https://github.com/javadev/underscore-java
Port of Underscore.js functions.
- tags: java, utility
- :octocat: source code
jabba
https://github.com/shyiko/jabba
Java Version Manager inspired by nvm. Supports Mac OS X, Linux and Windows.
- tags: java, version-manager
- :octocat: source code
jenv
https://github.com/gcuisinier/jenv
Java Version Manager inspired by rbenv. Can configure globally or per project. Tested on Debian and Mac OS X.
- tags: java, version-manager
- :octocat: source code
SDKMan
https://github.com/sdkman/sdkman-cli
Java Version Manager inspired by RVM and rbenv. Supports UNIX-based platforms and Windows.
- tags: java, version-manager
- :octocat: source code
Apache Nutch
Highly extensible, highly scalable web crawler for production environments.
- tags: java, web-crawling
Crawler4j
https://github.com/yasserg/crawler4j
Simple and lightweight web crawler.
- tags: java, web-crawling
- :octocat: source code
jsoup
Scrapes, parses, manipulates and cleans HTML.
- tags: java, web-crawling
StormCrawler
SDK for building low-latency and scalable web crawlers.
- tags: java, web-crawling
webmagic
https://github.com/code4craft/webmagic
Scalable crawler with downloading, url management, content extraction and persistent.
- tags: java, web-crawling
- :octocat: source code
Apache Tapestry
Component-oriented framework for creating dynamic, robust, highly scalable web applications.
- tags: java, web-frameworks
Apache Wicket
Component-based web application framework similar to Tapestry, with a stateful GUI.
- tags: java, web-frameworks
Blade
https://github.com/biezhi/blade
Lightweight, modular framework that aims to be elegant and simple.
- tags: java, web-frameworks
- :octocat: source code
Bootique
Minimally opinionated framework for runnable apps.
- tags: java, web-frameworks
Firefly
Asynchronous framework for rapid development of high-performance web application.
- tags: java, web-frameworks
Grails
Groovy framework that provides a highly productive environment by favoring convention over configuration, no XML and support for mixins.
- tags: java, web-frameworks
Jooby
Scalable, fast and modular micro-framework that offers multiple programming models.
- tags: java, web-frameworks
Ninja
Full-stack web framework.
- tags: java, web-frameworks
Pippo
Small, highly modularized, Sinatra-like framework.
- tags: java, web-frameworks
Play
Built on Akka, it provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications in Java and Scala.
- tags: java, web-frameworks
PrimeFaces
JSF framework with both free and commercial/support versions and frontend components.
- tags: java, web-frameworks
Ratpack
Set of libraries that facilitate fast, efficient, evolvable and well-tested HTTP applications.
- tags: java, web-frameworks
Takes
https://github.com/yegor256/takes
Opinionated web framework which is built around the concepts of True Object-Oriented Programming and immutability.
- tags: java, web-frameworks
- :octocat: source code
Vaadin Flow
Event-driven framework that uses standard web components. Server-side architecture with Ajax on the client side.
- tags: java, web-frameworks
Awesome Gradle Plugins
https://github.com/ksoichiro/awesome-gradle
A curated list of awesome Gradle plugins and resources for a better development workflow automation. - ksoichiro/awesome-gradle
- tags: java, awesome-list
- :octocat: source code
AwesomeJavaFX
https://github.com/mhrimaz/AwesomeJavaFX
A curated list of awesome JavaFX libraries, books, frameworks, etc... - mhrimaz/AwesomeJavaFX
- tags: java, awesome-list
- :octocat: source code
Awesome JVM
https://github.com/deephacks/awesome-jvm
A curated list of awesome loosely performance related JVM stuff. Inspired by awesome-python. - deephacks/awesome-jvm
- tags: java, awesome-list
- :octocat: source code
Awesome Microservices
https://github.com/mfornos/awesome-microservices
A curated list of Microservice Architecture related principles and technologies. - mfornos/awesome-microservices
- tags: java, awesome-list
- :octocat: source code
Awesome REST
https://github.com/marmelab/awesome-rest
A collaborative list of great resources about RESTful API architecture, development, test, and performance - marmelab/awesome-rest
- tags: java, awesome-list
- :octocat: source code
Awesome Selenium
https://github.com/christian-bromann/awesome-selenium
A curated list of delightful Selenium resources. Contribute to christian-bromann/awesome-selenium development by creating an account on GitHub.
- tags: java, awesome-list
- :octocat: source code
ciandcd
https://github.com/ciandcd/awesome-ciandcd
continuous integration and continuous delivery. Contribute to ciandcd/awesome-ciandcd development by creating an account on GitHub.
- tags: java, awesome-list
- :octocat: source code
Useful Java Links
https://github.com/Vedenin/useful-java-links
A list of useful Java frameworks, libraries, software and hello worlds examples - Vedenin/useful-java-links
- tags: java, awesome-list
- :octocat: source code
Java Concurrency Checklist
https://github.com/code-review-checklists/java-concurrency
Checklist for code reviews. Contribute to code-review-checklists/java-concurrency development by creating an account on GitHub.
- tags: java, awesome-list
- :octocat: source code
r/java
Subreddit for the Java community.
stackoverflow
https://stackoverflow.com/questions/tagged/java
Question/answer platform.
VirtualJUG
Virtual Java User Group.
java.libhunt.com
Your go-to Java Toolbox. A curated list of awesome Java frameworks, libraries and software. 706 projects organized into 80 categories.
Core Java Volume I--Fundamentals
https://www.amazon.com/Core-Java-I-Fundamentals-10th/dp/0134177304
Core Java Volume I--Fundamentals (10th Edition) (Core Series) [Cay S. Horstmann] on Amazon.com. FREE shipping on qualifying offers.
Core Java® has long been recognized as...
Core Java, Volume II--Advanced Features
https://www.amazon.com/Core-Java-II-Advanced-Features-10th/dp/0134177290
Core Java, Volume II--Advanced Features (10th Edition) (Core Series) [Cay S. Horstmann] on Amazon.com. FREE shipping on qualifying offers.
Core Java® has long been recogn...
[Effective Java (3rd Edition)](3rd Edition)
3rd Edition
Error retrieving description
Java Concurrency in Practice
https://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601
Java Concurrency in Practice [Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea] on Amazon.com. FREE shipping on qualifying offers. I was fortunate indeed to have worked...
Thinking in Java
https://www.amazon.com/Thinking-Java-Edition-Bruce-Eckel/dp/0131872486
Thinking in Java (4th Edition) [Bruce Eckel] on Amazon.com. FREE shipping on qualifying offers.
“ Thinking in Java should be read cover to cover by every Java programmer
Java Off Heap
Just four engineers (and guests) talking about what’s happening to our favorite programming language.
- tags: java, podcast, screencast
Marco Behler's Screencasts
https://www.marcobehler.com/series
Screencasts about modern Java development.
- tags: java, podcast, screencast
The Java Council
https://virtualjug.com/#podcast
- tags: java, podcast, screencast
The Java Posse
Discontinued as of 02/2015.
- tags: java, podcast, screencast
Adam Bien
Freelance author, JavaOne Rockstar speaker, consultant, Java Champion.
- tags: java, twitter-accounts
Aleksey Shipilëv
Performance geek, benchmarking czar, concurrency bug hunter.
- tags: java, twitter-accounts
Antonio Goncalves
Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author.
- tags: java, twitter-accounts
Arun Gupta
Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase.
- tags: java, twitter-accounts
Brian Goetz
https://twitter.com/BrianGoetz
Java Language Architect at Oracle.
- tags: java, twitter-accounts
Bruno Borges
https://twitter.com/brunoborges
Product Manager/Java Jock at Oracle.
- tags: java, twitter-accounts
Chris Richardson
https://twitter.com/crichardson
Software architect, consultant, and serial entrepreneur, Java Champion, JavaOne Rock Star, *POJOs in Action- author.
- tags: java, twitter-accounts
Ed Burns
Consulting Member of the Technical Staff at Oracle.
- tags: java, twitter-accounts
Eugen Paraschiv
Author of the Spring Security Course.
- tags: java, twitter-accounts
Heinz Kabutz
https://twitter.com/heinzkabutz
Java Champion, speaker, author of The Java Specialists' Newsletter, concurrency performance expert.
- tags: java, twitter-accounts
Holly Cummins
https://twitter.com/holly_cummins
Technical Lead of IBM London's Bluemix Garage, Java Champion, developer, author, JavaOne rockstar.
- tags: java, twitter-accounts
James Weaver
https://twitter.com/JavaFXpert
Java/JavaFX/IoT developer, author and speaker.
- tags: java, twitter-accounts
Java EE
Official Java EE Twitter account.
- tags: java, twitter-accounts
Java Magazine
https://twitter.com/Oraclejavamag
Official Java Magazine account.
- tags: java, twitter-accounts
Java
Official Java Twitter account.
- tags: java, twitter-accounts
Javin Paul
Well-known Java blogger.
- tags: java, twitter-accounts
Josh Long
https://twitter.com/starbuxman
Spring Advocate at Pivotal, author of O'Reilly's Cloud Native Java- and Building Microservices with Spring Boot, JavaOne Rock Star.
- tags: java, twitter-accounts
Lukas Eder
Java Champion, speaker, JUG.ch co-leader, Founder and CEO Data Geekery (jOOQ).
- tags: java, twitter-accounts
Mario Fusco
https://twitter.com/mariofusco
RedHatter, JUG coordinator, frequent speaker and author.
- tags: java, twitter-accounts
Mark Heckler
Pivotal Principal Technologist and Developer Advocate, conference speaker, published author, and Java Champion, focusing on Internet of Things and the cloud.
- tags: java, twitter-accounts
Mark Reinhold
Chief Architect, Java Platform Group, Oracle.
- tags: java, twitter-accounts
Markus Eisele
Java EE evangelist, Red Hat.
- tags: java, twitter-accounts
Martijn Verburg
London JUG co-leader, speaker, author, Java Champion and much more.
- tags: java, twitter-accounts
Martin Thompson
Pasty faced performance gangster.
- tags: java, twitter-accounts
Monica Beckwith
Performance consultant, JavaOne Rock Star.
- tags: java, twitter-accounts
OpenJDK
Official OpenJDK account.
- tags: java, twitter-accounts
Peter Lawrey
https://twitter.com/PeterLawrey
Peter Lawrey, Java performance expert.
- tags: java, twitter-accounts
Randy Shoup
https://twitter.com/randyshoup
Stitch Fix VP Engineering, speaker, JavaOne Rock Star.
- tags: java, twitter-accounts
Reza Rahman
https://twitter.com/reza_rahman
Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker.
- tags: java, twitter-accounts
Sander Mak
https://twitter.com/Sander_Mak
Java Champion, author.
- tags: java, twitter-accounts
Simon Maple
Java Champion, VirtualJUG founder, LJC leader, RebelLabs author.
- tags: java, twitter-accounts
Stephen Colebourne
https://twitter.com/jodastephen
Java Champion, speaker.
- tags: java, twitter-accounts
Trisha Gee
https://twitter.com/trisha_gee
Java Champion and speaker.
- tags: java, twitter-accounts
Venkat Subramaniam
Author, University of Houston professor, MicroSoft MVP award recipient, JavaOne Rock Star, Java Champion.
- tags: java, twitter-accounts
Baeldung
Java, Spring and Web Development tutorials
- tags: java
Dzone
Programming, Web Development, and DevOps news, tutorials and tools for beginners to experts. Hundreds of free publications, over 1M members, totally free.
- tags: java
InfoQ
Curated and peer-reviewed content covering innovation in professional software development, read by over 1 million developers worldwide
- tags: java
Java Algorithms and Clients
https://algs4.cs.princeton.edu/code
- tags: java
Java, SQL, and jOOQ
Best Practices and Lessons Learned from Writing Awesome Java and SQL Code. Get some hands-on insight on what's behind developing jOOQ.
- tags: java
Java.net
https://community.oracle.com/community/java
The Java space contains technical articles, blogs and discussion forums with questions and answers about Java technologies.
- tags: java
Javalobby
https://dzone.com/java-jdk-development-tutorials-tools-news
Programming, Web Development, and DevOps news, tutorials and tools for beginners to experts. Hundreds of free publications, over 1M members, totally free.
- tags: java
JavaWorld
Solutions for Java developers | JavaWorld
- tags: java
JAXenter
News, Articles, Code.
- tags: java
RebelLabs
https://zeroturnaround.com/rebellabs
- tags: java
OverOps Blog
OverOps’ AIOps Platform analyzes your code in real-time, as it’s executing, in pre-production and production environments to automatically identify anomalies
- tags: java
TheServerSide.com
Java developers discussing Java J2EE, java software, Java programming and other trends in server side development
- tags: java
Vanilla Java
https://vanilla-java.github.io
- tags: java
Voxxed
Technical news website covering the Java language, Mobile, JVM, Cloud, Methodology and Technology Future related articles by developers for developers.
- tags: java
awesome-rxjava
https://github.com/eleventigers/awesome-rxjava#readme
Useful resources for working with RxJava. Contribute to eleventigers/awesome-rxjava development by creating an account on GitHub.
- tags: awesome-list, programming-languages, java, rxjava
- :octocat: source code
jedis home page
https://github.com/xetorthio/jedis
Jedis
Jedis is a blazingly small and sane Redis java client.
Jedis was conceived to be EASY to use.
Jedis is fully compatible with redis 2.8.x, 3.x.x...
- tags: redis, java
- :octocat: source code
GitHub - Netflix/zuul home page
https://github.com/Netflix/zuul
Zuul is an edge service that provides dynamic routing, monitoring, resiliency, security, and more. Please view the wiki for usage, information, HOWTO, etc [https://github.com/Netflix/zuul/wiki](https:...
- tags: zuul, api-gateway, java
- :octocat: source code
Google Cloud Platform Blog Introducing Jib — build Java Docker images better
https://cloudplatform.googleblog.com/2018/07/introducing-jib-build-java-docker-images-better.html
Containers are bringing Java developers closer than ever to a "write once, run anywhere" workflow, but containerizing a Java application is no simple task: You have to write a Dockerfile, run a Docker...
- :calendar: published on: 2018-07-09
- tags: jib, java, maven, maven-plugin, gradle, docker, dockerfile
- :octocat: source code
Continuous Development with Java and Kubernetes - DEV Community 👩💻👨💻
https://dev.to/pozo/continuous-development-with-java-and-kubernetes-3d08
Continuous Development with Java and Kubernetes with the help of Jib and Skaffold
- :calendar: published on: 2011-03-01
- tags: java, kubernetes, spring-boot, helm, skaffold, debugging, jib
- :octocat: source code
Java 8: Definitive guide to CompletableFuture
https://www.nurkiewicz.com/2013/05/java-8-definitive-guide-to.html
Examples of using and combining
CompletableFutureAPI
- :calendar: published on: 2013-05-09
- tags: java, asynchronous, async
Arthas Java Diagnostics Tool - home page
https://alibaba.github.io/arthas/en/
Key features
- Check whether a class is loaded, or where the class is being loaded. (Useful for troubleshooting jar file conflicts)
- Decompile a class to ensure the code is running as expected....
- tags: java, diagnostics, performance
- :octocat: source code
macos - Mac OS X and multiple Java versions - Stack Overflow
https://stackoverflow.com/questions/26252591/mac-os-x-and-multiple-java-versions
jEnv - Manage your Java environment
Discover jenv, the command line Java manager
- tags: java, jenv
- :octocat: source code
Oliver Gierke - Whoops! Where did my architecture go
http://olivergierke.de/2013/01/whoops-where-did-my-architecture-go/
Summary
The basic approach I recommend is to move the vertical slices into the focus of the package naming and try to model them in a way that the public API of a slice is as tiny as possible in...
- :calendar: published on: 2013-01-01
- tags: java, architecture
- :octocat: source code
useful-java-links
https://github.com/Vedenin/useful-java-links#readme
A list of useful Java frameworks, libraries, software and hello worlds examples - Vedenin/useful-java-links
- tags: java, resources, awesome-list
- :octocat: source code
jib home page
https://github.com/GoogleContainerTools/jib
:sailboat: Build container images for your Java applications. - GoogleContainerTools/jib
- Maven - See the jib-maven-plugin [Quickstart](https://github.com/GoogleContainerTools/jib/tree/master/ji...
- tags: docker, maven-plugin, java, gradle
- :octocat: source code
kubernetes-for-java-developers repo from Aron Gupta
https://github.com/aws-samples/kubernetes-for-java-developers
A Day in Java Developer’s Life, with a taste of Kubernetes - aws-samples/kubernetes-for-java-developers. sample. example.
- tags: java, docker, kubernetes, kubernetes-helm, maven-plugin, istio, aws
- :octocat: source code
Testcontainers home page
https://www.testcontainers.org/
Testcontainers is a Java 8 library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container...
- tags: testing, docker, java
- :octocat: source code
JUnit 5 Articles and source code from Baeldung
https://github.com/eugenp/tutorials/tree/master/testing-modules/junit-5
- The Basics of JUnit 5 – A Preview
- A Guide to JUnit 5
- [A Guide to @RepeatedTest in Junit 5](http://www.baeldung.com/j...
- tags: junit, java
- :octocat: source code
Reactor vs. RxJava
http://helmbold.de/artikel/reactor-vs-rxjava/
Was spricht für und gegen Reactor und RxJava?
ORM Is an Offensive Anti-Pattern
https://www.yegor256.com/2014/12/01/orm-offensive-anti-pattern.html
TL;DR ORM is a terrible anti-pattern that violates all principles of object-oriented programming, tearing objects apart and turning them into dumb and passive data bags. There is no excuse for ORM exi...
Ted Vinke's Blog – Java, Groovy and Grails
https://tedvinke.wordpress.com/
Java, Groovy and Grails
java.util.concurrent - Java Concurrency Utilities
http://tutorials.jenkov.com/java-util-concurrent/index.html
In this tutorial I will take you through the new java.util.concurrent classes, one by one, so you can learn how to use them. I will use the versions in Java 6. I am not sure if there are any differenc...
- tags: java, concurrency, asynchronous
Java Lambda Expressions
http://tutorials.jenkov.com/java/lambda-expressions.html
Java lambda expressions are new in Java 8. Java lambda expressions are Java's first step into functional programming. A Java lambda expression is thus a function which can be created without belonging...
- tags: java
The Basics of Java Generics
https://www.baeldung.com/java-generics
A quick intro tot he basics of Java Generics.
- tags: java, generics
- :octocat: source code
Finally Getting the Most out of the Java Thread Pool
https://stackify.com/java-thread-pools/
Finally understanding how thread pools really work in Java can be the difference between your application being a slog, or a clean and efficient system.
- :calendar: published on: 2017-09-06
- tags: java, multithreading
How To Serialize Enums as JSON Objects with Jackson
https://www.baeldung.com/jackson-serialize-enums
How to serialize an Enum as a JSON Object using Jackson 2.
- :calendar: published on: 2018-11-23
- tags: java, serialization, jackson, json
- :octocat: source code
Asynchronous REST Services with JAX-RS and CompletableFuture · allegro.tech
https://allegro.tech/2014/10/async-rest.html
One of new features introduced by JAX-RS 2.0 is asynchronous processing in Server and Client APIs. We use these APIs together with CompletableFutur...
- :calendar: published on: 2014-10-29
- tags: rest, java, javaee, asynchronous
awesome-java
https://github.com/akullpp/awesome-java#readme
A curated list of awesome frameworks, libraries and software for the Java programming language. - akullpp/awesome-java
- tags: java, awesome-list
Iterate over a Map in Java
https://www.baeldung.com/java-iterate-map
Learn different ways of iterating through the entries of a Map in Java.
- :calendar: published on: 2018-10-20
- tags: java
- :octocat: source code
Ultimate Guide - Association Mappings with JPA and Hibernate
https://thoughts-on-java.org/ultimate-guide-association-mappings-jpa-hibernate/
Explains one-to-one, many-to-one and many-to-many associations with examples.
Java Functional Programming
http://tutorials.jenkov.com/java-functional-programming/index.html
The term Java functional programming refers to functional programming in Java. Functional programming in Java has not been easy historically, and there were even several aspects of functional progra...
- :calendar: published on: 2018-08-05
- tags: java, functional-programming
Finally Functional Programming in Java – Hacker Noon
https://hackernoon.com/finally-functional-programming-in-java-ad4d388fb92e
In many post we have explored Functional Programming concept on different languages being F and Scala the focus of the conversation. However, because I have been doing some Java on my workplace, expl...
- :calendar: published on: 2018-02-26
- tags: java, scala, functional-programming
Understanding, Accepting and Leveraging Optional in Java
https://stackify.com/optional-java/
Optional is a simple yet very significant addition in Java 8. See examples of how it can be useful both on its own, but also in functional code where it really shines.
- :calendar: published on: 1999-09-14
- tags: java
Apache Olingo Library
Apache Olingo provides libraries which enable developers to implement OData producers and OData consumers. The available OData Java library implements OData version 2.0. In future on goal is to provid...
GraphQL Java Kickstart
https://www.graphql-java-kickstart.com/
Projects for easily getting started with GraphQL using Java.
- tags: graphql, java, spring-boot
- :octocat: source code
Java annotations
http://tutorials.jenkov.com/java/annotations.html
Java annotations are used to provide meta data for your Java code. Being meta data, Java annotations do not directly affect the execution of your code, although some types of annotations can actually ...
- tags: java
Java reflection tutorial
http://tutorials.jenkov.com/java-reflection/index.html
This tutorial will get into Java reflection in depth. It will explain the basics of Java Reflection including how to work with arrays, annotations, generics and dynamic proxies, and do dynamic class l...
- :calendar: published on: 2018-09-25
- tags: java
MapStruct – Java bean mappings, the easy way!
MapStruct is a Java annotation processor for the generation of type-safe and performant mappers for Java bean classes. It saves you from writing mapping c...
- tags: java, mapper, mapping
- :octocat: source code
ModelMapper - Simple, Intelligent, Object Mapping.
ModelMapper is an intelligent, refactoring safe object mapping library that automatically maps objects to each other. It uses a convention based approach while providing a simple refactoring safe API ...
- tags: java, mapper, mapping
- :octocat: source code
Project Lombok
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.
Never write another getter or equals method again. Early access to future java featur...
- tags: java
- :octocat: source code
OkHttp
http://square.github.io/okhttp/
An HTTP & HTTP/2 client for Android and Java applications
- tags: http, https, http2, http-client, java
- :octocat: source code
Java Concurrency and Multithreading Tutorial
http://tutorials.jenkov.com/java-concurrency/index.html
Java Concurrency is a term that covers multithreading, concurrency and parallelism on the Java platform. That includes the Java concurrency tools, problems and solutions. This Java concurrency tutoria...
- tags: java
Guide To Java 8 Optional
https://www.baeldung.com/java-optional
Quick and practical guide to Optional in Java 8
- :calendar: published on: 2018-09-16
- tags: java
- :octocat: source code
Resilience4j
https://github.com/resilience4j/resilience4j
Resilience4j is a fault tolerance library designed for Java8 and functional programming - resilience4j/resilience4j
- tags: circuit-breaker, java, metrics
- :octocat: source code
How to TDD a List Implementation in Java
https://www.baeldung.com/java-test-driven-list
Learn Test-Driven Development while implementing a List implementation in Java.
- tags: tdd, java
- :octocat: source code
AssertJ homepage
http://joel-costigliola.github.io/assertj/
AssertJ provides a rich and intuitive set of strongly-typed assertions to use for unit testing (with JUnit, TestNG or any other test framework).
- tags: java, spring, testing
- :octocat: source code
Rest assured
https://github.com/rest-assured/rest-assured
Java DSL for easy testing of REST services.
- tags: rest, testing, java, api
- :octocat: source code
Why getter and setter methods are evil
https://www.javaworld.com/article/2073723/core-java/why-getter-and-setter-methods-are-evil.html
The getter/setter idiom is a commonplace feature in many Java programs. Most of these accessor methods, however, are unnecessary and can severely impact your systems' maintainability. Using accessors ...
- :calendar: published on: 2003-09-05
- tags: java
Strategy Design Pattern in Java 8
https://www.baeldung.com/java-strategy-pattern
Implementation of Strategy design pattern in the light of Java 8 features.
- :calendar: published on: 2018-04-04
- tags: java, design-patterns
- :octocat: source code
JPA EntityManager: Why use persist() over merge()? - Stack Overflow
https://stackoverflow.com/questions/1069992/jpa-entitymanager-why-use-persist-over-merge
Either way will add an entity to a PersistenceContext, the difference is in what you do with the entity afterwards.
Persist takes an entity instance, adds it to the context and makes that instance ma...
Metrics
https://metrics.dropwizard.io/
Metrics is a Java library which gives you unparalleled insight into what your code does in production.
- tags: java, jvm, performance
- :octocat: source code
Complete Guide: Inheritance strategies with JPA and Hibernate
https://www.thoughts-on-java.org/complete-guide-inheritance-strategies-jpa-hibernate/
Hibernate and JPA support 4 inheritance strategies which map the entities to different table models. But which one is the best for your use case?
GitHub - ben-manes/caffeine: A high performance caching library for Java 8
https://github.com/ben-manes/caffeine
A high performance caching library for Java 8
- tags: java, caching
- :octocat: source code
The JMockit testing toolkit
Home of the JMockit open source project. JMockit is a Java toolkit for developer testing, including mocking APIs and a code coverage tool.
- tags: java, testing, jmockit
- :octocat: source code
JMockit 101
http://www.baeldung.com/jmockit-101
A simple and practical guide to testing and mocking with JMockit.
- :calendar: published on: 2018-04-15
- tags: java, testing, jmockit
- :octocat: source code
Richard Clayton - Speaking Intelligently about "Java vs Node" Performance
https://rclayton.silvrback.com/speaking-intelligently-about-java-vs-node-performance
Speaking Intelligently about "Java vs Node" Performance - Please understand what's really important when it comes to the benefits of a platform.
- tags: java, node.js, performance, concurrency, benchmarking
Mockito vs EasyMock vs JMockit
http://www.baeldung.com/mockito-vs-easymock-vs-jmockit
A quick and practical guide to understanding and comparing Java mocking libraries.
- tags: java, testing
- :octocat: source code
RSA Signing and Encryption in Java
http://niels.nu/blog/2016/java-rsa.html
Shows with Java examples the following:
Generating key pairs in Java
Encryption / Decryption
Sign / Verify
Java KeyStore
:calendar: published on: 2016-12-29
tags: java, cryptography, security
:octocat: source code
Hashids - generate short unique ids from integers
Generate short unique ids from integers. Use in url shortening or as unique ids.
- tags: javascript, ruby, go, java, lua, security
- :octocat: source code
Microservices in Java? Never. – codeburst
https://codeburst.io/microservices-in-java-never-a7f3a2540dbb
There has been an ever growing number of teams looking to re-architect their monolithic systems into a series of single-responsibility microservices and with good reason. Having that separation of con...
- :calendar: published on: 2017-10-15
- tags: java, microservices
GraalVM
GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++.
- tags: java, scala, kotlin, virtual-machine
- :octocat: source code
Announcing GraalVM: Run Programs Faster Anywhere
https://blogs.oracle.com/developers/announcing-graalvm
Today, we are pleased to announce the 1.0 release of GraalVM, a universal virtual machine designed for a polyglot world.
- tags: java, jvm, virtual-machine
- :octocat: source code
Converting array to list in Java - Stack Overflow
https://stackoverflow.com/questions/2607289/converting-array-to-list-in-java
Integer[] spam = new Integer[] { 1, 2, 3 }; Arrays.asList(spam);
- tags: java
Introduction to Testing with Arquillian
http://www.baeldung.com/arquillian
Learn how to prepare and execute tests using Arquillian, a container-agnostic integration testing framework.
- :calendar: published on: 2017-11-30
- tags: testing, java, javaee, arquillian
- :octocat: source code
Java Volatile Keyword
http://tutorials.jenkov.com/java-concurrency/volatile.html
- Variable Visibility Problems
- The Java volatile Visibility Guarantee
- Full volatile Visibility Guarantee
- Instruction Reordering Challenges
- The Java volatile Happens-Before Guarantee
- volati...
- :calendar: published on: 2018-03-08
- tags: java
"Stream has already been operated upon or closed" Exception in Java
http://www.baeldung.com/java-stream-operated-upon-or-closed-exception
Discover how to solve the "Stream has already been operated upon or closed" exception in Java.
- :calendar: published on: 2017-10-29
- tags: java
- :octocat: source code
How To Serialize Enums as JSON Objects with Jackson
http://www.baeldung.com/jackson-serialize-enums
How to serialize an Enum as a JSON Object using Jackson 2.
- :calendar: published on: 2017-07-19
- tags: java, json
- :octocat: source code
Composition versus Inheritance
https://www.artima.com/designtechniques/compoinh.html
Article describing how to use composition and inheritance in Java program designs.
Inheritance When you establish an inheritance relationship between two classes, you get to take advantage of dyn...
Testing Java Persistence · Arquillian Guides
http://arquillian.org/guides/testing_java_persistence/
Test your data! Learn how to test Java Persistence (JPA) queries against multiple providers in an Arquillian test.
- tags: arquillian, java, jpa
REST with Java (JAX-RS) using Jersey - Tutorial
http://www.vogella.com/tutorials/REST/article.html
RESTful web services with Java (Jersey / JAX-RS). This tutorial explains how to develop RESTful web services in Java. It uses the JAX-RS reference implementation Jersey. In this tutorial Eclipse 4.7 (...
CachesExplained · google/guava Wiki · GitHub
https://github.com/google/guava/wiki/CachesExplained
Wiki page with examples of using the caching of guava
- tags: java, caching
- :octocat: source code
GitHub - google/guava: Google core libraries for Java
https://github.com/google/guava
Guava is a set of core libraries that includes new collection types (such as multimap and multiset), immutable collections, a graph library, functional types, an in-memory cache, and APIs/utilities fo...
- tags: java
- :octocat: source code
How to make parallel calls in Java with CompletableFuture example – CodingpediaOrg
http://www.codingpedia.org/ama/how-to-make-parallel-calls-in-java-with-completablefuture-example
This blog post presents an example about how to make parallel calls in Java with CompletableFuture in an asynchronous fashion. It resembles somehow the parallel calls pattern one can achieve in JavaSc...
Guide To CompletableFuture | Baeldung
http://www.baeldung.com/java-completablefuture
Quick and practical guide to Java 8's CompletableFuture.
- :calendar: published on: 2017-09-23
- tags: java, asynchronous
- :octocat: source code
Java 8 CompletableFuture Tutorial | CalliCoder
https://www.callicoder.com/java-8-completablefuture-tutorial/
In this tutorial you'll learn what
CompletableFutureis and how to useCompletableFuturefor asynchronous programming in Java.
- :calendar: published on: 2017-07-18
- tags: java, asynchronous
java - Ignoring new fields on JSON objects using Jackson - Stack Overflow
https://stackoverflow.com/questions/5455014/ignoring-new-fields-on-json-objects-using-jackson
Mark the POJO to ignore unknown properties
Introduction | RESTful Java with JAX-RS 2.0 (Second Edition)
https://dennis-xlc.gitbooks.io/restful-java-with-jax-rs-2-0-2rd-edition/en/index.html
Complete JAX-RS 2.0 book - lots of useful examples
- tags: java, jaxrs, javaee, free-programming-books, rest-client
30.2 Using the Client API in the JAX-RS Example Applications - Java Platform, Enterprise Edition: The Java EE Tutorial (Release 7)
https://docs.oracle.com/javaee/7/tutorial/jaxrs-client002.htm
The rsvp and customer examples use the Client API to call JAX-RS services. This section describes how each example application uses the Client API.
GitHub - ReactiveX/RxJava: RxJava
https://github.com/ReactiveX/RxJava
RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
- tags: java, reactive
- :octocat: source code
Bozho's tech blog
Tips and thoughts on developing software, by Bozhidar Bozhanov
How To Design A Good API and Why it Matters - YouTube
https://www.youtube.com/watch?v=heh4OeB9A-c
Google Tech Talks January 24, 2007 ABSTRACT Every day around the world, software developers spend much of their time working with a variety of Application Pr...
Petri Kainulainen — Developing Software With Passion
https://www.petrikainulainen.net/blog/
Developing Software With Passion
Antonio's Blog – A blog mainly about Java
A blog mainly about Java
Les Cast Codeurs Podcast | Liste des épisodes
Les Cast Codeurs est un podcast en français de, par et pour les développeurs. Prenez connaissance des dernières nouvelles de la sphère Java et du développement en général. Plongez sur un sujet précis ...
Adam Bien's Weblog
Java, SQL and jOOQ. – Best Practices and Lessons Learned from Writing Awesome Java and SQL Code. Get some hands-on insight on what's behind developing jOOQ.
Best Practices and Lessons Learned from Writing Awesome Java and SQL Code. Get some hands-on insight on what's behind developing jOOQ.
The Spring Blog
How to prepare the MacBook Pro for Java development and more – CodingpediaOrg
http://www.codingpedia.org/ama/how-to-prepare-the-macbook-pro-for-java-development-and-more/
Mac, Java, Maven, Git etc. Setup
Vlad Mihalcea's Blog
Teaching is my way of learning
Java Dependency Analysis Tool - JDK 8 - OpenJDK Wiki
https://wiki.openjdk.java.net/display/JDK8/Java+Dependency+Analysis+Tool
jdeps is a new command-line tool added since JDK 8 for developers to use to understand the static dependencies of their applications and libraries. jdeps is a static analysis tool on the given ...
- tags: java, code-analysis
Infinispan Homepage - Infinispan
Infinispan is a distributed in-memory key/value data store with optional schema, available under the Apache License 2.0.
- Available as an embedded Java library or as a language-independent service a...
- tags: nosql, java, in-memory, distributed-cache, caching
- :octocat: source code
Redirecting to http://metrics.dropwizard.io/3.2.3/
Capturing JVM- and application-level metrics. So you know what's going on.
- tags: java, jvm
- :octocat: source code
Redirecting to latest Dropwizard documentation
A damn simple library for building production-ready RESTful web services.
It's a little bit of opinionated glue code which bangs together a set of libraries which have historically not sucked:
- [Je...
- tags: java, rest
- :octocat: source code
JUnit
JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.
- tags: testing, java, junit
- :octocat: source code
JSON Processing (JSON-P) - Home
https://javaee.github.io/jsonp/
JSON Processing (JSON-P) is a Java API to process (for e.g. parse, generate, transform and query) JSON messages. It produces and consumes JSON text in a streaming fashion (similar to StAX API for XML)...
The try-with-resources Statement - Java Tutorials
https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html
The try-with-resources statement is a try statement that declares one or more resources. A resource is an object that must be closed after the program is finished with it. The try-with-resources sta...
- tags: java, exception-handling
Java API for JSON Processing
http://www.oracle.com/technetwork/articles/java/json-1973242.html
The Java API for JSON Processing provides portable APIs to parse, generate, transform, and query JSON.
See examples here...
JSON.simple example – Read and write JSON
https://www.mkyong.com/java/json-simple-example-read-and-write-json/
JSON.simple is a simple Java library for JSON processing, read and write JSON data and full compliance with [JSON specification (RFC4627)](http://www.ietf....
RMI
http://mek.oszk.hu/01200/01263/index.phtml
Dékány Dániel (PDF)
Programozás III.
http://www.sze.hu/~varjasin/oktat.html
Varjasi Norbert (PDF)
Objektumorientált programozás
http://www.ms.sapientia.ro/~manyi/teaching/oop/oop.pdf
Antal Margit (PDF)
Java programozás
http://nagygusztav.hu/java-programozas
Nagy Gusztáv (PDF)
Java alapú webtechnológiák
http://www.ms.sapientia.ro/~manyi/index_java_techn.html
Antal Margit (PDF)
Hálózati alkalmazások készítése: CORBA, Java, WWW
http://mek.oszk.hu/01700/01750/index.phtml
Csizmazia Balázs (PS)
Hálózati alkalmazások Java nyelven
http://mek.oszk.hu/01300/01304/index.phtml
Csizmazia Anikó, Csizmazia Balázs (PDF)
Fantasztikus programozás
http://mek.oszk.hu/00800/00889/index.phtml
Bátfai Mária Erika, Bátfai Norbert (PDF)
CORBA-alapú elosztott alkalmazások
http://mek.oszk.hu/01400/01404/index.phtml
Csizmazia Balázs (PDF)
Σημειώσεις Java
http://www.ebooks4greeks.gr/wp-content/uploads/2013/03/shmeiwseis-Java-eBooks4Greeks.gr_.pdf
(PDF)
Ηλεκτρονικό εγχειρίδιο της JAVA
http://www.ebooks4greeks.gr/wp-content/uploads/2013/04/java-2012-eBooks4Greeks.gr_.pdf
(PDF)
Εισαγωγή στη γλώσσα προγραμματισμού JAVA
http://www.ebooks4greeks.gr/dowloads/Pliroforiki/Glosses.program./Java__Downloaded_from_eBooks4Greek...
(PDF)
Εισαγωγή στη Java
http://www.ebooks4greeks.gr/wp-content/uploads/2013/03/Java-free-book.pdf
(PDF)
Programmieren Java: Einführung
http://www.highscore.de/java/einfuehrung/
Programmieren Java: Aufbau
http://www.highscore.de/java/aufbau/
Java ist auch eine Insel
http://openbook.rheinwerk-verlag.de/javainsel/
Java 7 Mehr als eine Insel
http://openbook.rheinwerk-verlag.de/java7/
EJB 3 für Umsteiger: Neuerungen und Änderungen gegenüber dem EJB-2.x-Standard
http://bsd.de/e3fu/umfrage.html
Heiko W. Rupp
Интернет програмиране с Java
http://www.nakov.com/books/inetjava/index.html
Светлин Наков
Въведение в програмирането с Java
http://www.introprogramming.info/intro-java-book/read-online/
Светлин Наков
Web ágil com VRaptor, Hibernate e AJAX
http://www.caelum.com.br/apostila-vraptor-hibernate/
Caelum
Orientação a objetos em Java
http://www.k19.com.br/downloads/apostilas/java/k19-k11-orientacao-a-objetos-em-java
K19
Persistência com JPA 2 e Hibernate
http://www.k19.com.br/downloads/apostilas/java/k19-k21-persistencia-com-jpa2-e-hibernate
K19
Lab. Java com Testes, JSF e Design Patterns
https://www.caelum.com.br/apostila-java-testes-jsf-web-services-design-patterns/
Caelum
Java para Desenvolvimento Web
http://www.caelum.com.br/apostila-java-web/
Caelum
Java e Orientação a Objetos
http://www.caelum.com.br/apostila-java-orientacao-objetos/
Caelum
Introdução a Ciência da Computação com Java
http://ccsl.ime.usp.br/files/books/intro-java-cc.pdf
(PDF)
Integração de Sistemas com Webservices, JMS e EJB
http://www.k19.com.br/downloads/apostilas/java/k19-k23-integracao-de-sistemas-com-webservices-jms-e-...
K19
Design Patterns em Java
http://www.k19.com.br/downloads/apostilas/java/k19-k51-design-patterns-em-java
K19
Desenvolvimento Web com Struts
http://www.k19.com.br/downloads/apostilas/java/k19-k52-desenvolvimento-web-com-struts
K19
Desenvolvimento Web Avançado com JSF 2, EJB 3.1 e CDI
http://www.k19.com.br/downloads/apostilas/java/k19-k22-desenvolvimento-web-avancado-com-jsf2-ejb3.1-...
k19
Desenvolvimento Web com JSF 2 e JPA 2
http://www.k19.com.br/downloads/apostilas/java/k19-k12-desenvolvimento-web-com-jsf2-e-jpa2
K19
Desenvolvimento Distribuído com JavaEE
https://www.gitbook.com/book/rafaelsakurai/desenvolvimento-distribuido
Rafael Guimarães Sakurai
Algoritmos e Estruturas de Dados com Java
http://www.caelum.com.br/apostila-java-estrutura-dados/
Caelum
Java start
頑健なJavaプログラムの書き方
http://seiza.dip.jp/link/files/writingrobustjavacode.pdf
Scott W. Ambler, 高橋徹(翻訳) (PDF)
お気楽 Java プログラミング入門
http://www.geocities.jp/m_hiroi/java/index.html
広井誠
Java基礎文法最速マスター
http://d.hatena.ne.jp/nattou_curry_2/20100130/1264821094
id:nattou_curry
Tutorial Introducción a Maven 3
http://static1.1.sqspcdn.com/static/f/923743/15025126/1320942755733/Tutorial_de_Maven_3_Erick_Camach...
(PDF)
Tutorial básico de Java EE
http://static1.1.sqspcdn.com/static/f/923743/14770633/1416082087870/JavaEE.pdf
(PDF)
Programación Orientada a Objetos en Java
http://fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java.pdf
(PDF)
PlugIn Tapestry: Desarrollo de aplicaciones y páginas web con Apache Tapestry
http://picodotdev.github.io/blog-bitix/2014/02/libro-sobre-desarrollo-de-aplicaciones-con-apache-tap...
(PDF) (EPUB) ([MOBI](http://picodotdev.github.io/...
Pensando la computación como un científico (con Java)
http://www.ungs.edu.ar/areas/publicaciones/476/pensando-la-computacion-como-un-cientifico.html
OCPJP6 Resumen Español
https://github.com/PabloReyes/ocpjp-resumen-espanol
Pablo Reyes Almagro (PDF)
Notas de Introducción al Lenguaje de Programación Java
http://lya.fciencias.unam.mx/jloa/publicaciones/introduccionJava.pdf
Jorge L. Ortega Arjona, UNAM (PDF)
Desarrollo de proyectos informáticos con Java
http://www3.uji.es/~belfern/libroJava.pdf
(PDF)
Arquitectura Java Sólida
http://www.arquitecturajava.com
Aprendiendo Java
http://www.decom-uv.cl/~roberto/apuntes/java/AprendiendoJava.pdf
(PDF)
Object Oriented && Java 5 (II Edizione)
http://www.claudiodesio.com/download/oo_&&_java_5.zip
Claudio De Sio Cesari (ZIP)
Java 7
https://it.wikibooks.org/wiki/Java
Wikibooks
Introduzione a Java
http://www.ateneonline.it/hyperbook/j_book/java2.htm
Guida a Java 8
http://twiki.di.uniroma1.it/pub/Metod_prog/RS_INFO/lezioni.html
Play.Rules!
http://3monkeys.github.io/play.rules/
Java 5.0, novinky jazyka a upgrade aplikací
http://i.iinfo.cz/files/root/k/java-5-0-novinky-jazyka-a-upgrade-aplikaci.pdf
(PDF)
Official Free Online Guide for Apache Wicket framework
http://wicket.apache.org/learn/#guide
- tags: free-programming-books, java, wicket
Spring Security Reference
http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/
Ben Alex, Luke Taylor, Rob Winch
Spring Boot Reference Guide
http://docs.spring.io/spring-boot/docs/current/reference/html/
Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch, Andy Wilkinson, Marcel Overdijk, Christian Dupuis ([PDF](http://docs.spring.io/spring-boot/docs/current/reference/pdf/spring-boot-refere...
- tags: free-programming-books, java, spring-boot
Spring Framework Reference Documentation
http://docs.spring.io/spring/docs/current/spring-framework-reference/html/
Rod Johnson, Juergen Hoeller, Keith Donald, Colin Sampaleanu, Rob Harrop, Thomas Risberg, Alef Arendsen, Darren Davison, Dmitriy Kopylenko, Mark Pollack, Thierry Templier, Erwin Vervaet, Portia Tung, ...
- tags: spring, free-programming-books, java
The JasperReports Ultimate Guide, Third Edition
http://jasperreports.sourceforge.net/JasperReports-Ultimate-Guide-3.pdf
(PDF)
- tags: free-programming-books, java, jasperreports
What's New in Java 8
https://leanpub.com/whatsnewinjava8/read
Adam L. Davis
- tags: free-programming-books, java
Welcome to the Java Workshop (2006)
http://javaworkshop.sourceforge.net
Trevor Miller
- tags: free-programming-books, java
Welcome to Java for Python Programmers
https://interactivepython.org/runestone/static/java4python/index.html
Brad Miller
- tags: free-programming-books, java
Thinking in Java
http://www.mindview.net/Books/TIJ/
Bruce Eckel
- tags: free-programming-books, java
Think Java: How to Think Like a Computer Scientist
http://greenteapress.com/thinkapjava/
Allen B. Downey and Chris Mayfield
- tags: free-programming-books, java
The Java Tutorials
https://docs.oracle.com/javase/tutorial/index.html
- tags: free-programming-books, java
The Java EE7 Tutorial
https://docs.oracle.com/javaee/7/JEETT.pdf
Eric Jendrock, et al (PDF)
- tags: free-programming-books, java
The Java EE6 Tutorial
https://docs.oracle.com/javaee/6/tutorial/doc/javaeetutorial6.pdf
(PDF)
- tags: free-programming-books, java
The ABC of PDF with iText: PDF Syntax essentials
https://leanpub.com/itext_pdfabc
Bruno Lowagie
- tags: free-programming-books, java
Processing XML with Java (A Guide to SAX, DOM, JDOM, JAXP, and TrAX) (2002)
http://www.cafeconleche.org/books/xmljava/
Elliotte Rusty Harold
- tags: free-programming-books, java
OSGi in Practice
http://njbartlett.name/osgibook.html
N. Bartlett (PDF)
- tags: free-programming-books, java
Open Data Structures (in Java)
http://opendatastructures.org/ods-java.pdf
Pat Morin (PDF)
- tags: free-programming-books, java
OOP - Learn Object Oriented Thinking & Programming
http://pub.bruckner.cz/titles/oop
Rudolf Pecinovsky
- tags: free-programming-books, java
Object-Oriented vs. Functional Programming
http://www.oreilly.com/programming/free/object-oriented-vs-functional-programming.csp
Richard Warburton (Just fill the fields with any values)
- tags: free-programming-books, java
NIO Framework
http://nioframework.sourceforge.net/NIO_Paper.pdf
(PDF)
- tags: free-programming-books, java
Neural Network Development with Java
https://www.packtpub.com/packt/free-ebook/neural-networks-java
Alan M. F. Souza and Fabio M. Soares (Just fill the fields with any values)
- tags: free-programming-books, java
Modern Java EE Design Patterns
http://www.oreilly.com/programming/free/modern-java-ee-design-patterns.csp
Markus Eisele (Just fill the fields with any values)
- tags: free-programming-books, java
Microservices for Java Developers
http://www.oreilly.com/programming/free/microservices-for-java-developers.csp
Christian Posta (Just fill the fields with any values)
- tags: free-programming-books, java
Learning Java (4th Edition)
http://chimera.labs.oreilly.com/books/1234000001805/index.html
Patrick Niemeyer and Daniel Leuck
- tags: free-programming-books, java
Java: The Legend
https://www.oreilly.com/programming/free/java-the-legend.csp
Ben Evans (Just fill the fields with any values)
- tags: free-programming-books, java
Java Programming for Kids
https://yfain.github.io/Java4Kids/
Yakov Fain
- tags: free-programming-books, java
Java Language and Virtual Machine Specifications
https://docs.oracle.com/javase/specs/
James Gosling, et al
- tags: free-programming-books, java
Java Application Development on Linux (2005)
https://ptgmedia.pearsoncmg.com/images/013143697X/downloads/013143697X_book.pdf
Carl Albing and Michael Schwarz (PDF)
- tags: free-programming-books, java
Java: A Beginner's Guide
http://www.oracle.com/events/global/en/java-outreach/resources/java-a-beginners-guide-1720064.pdf
Oracle (PDF)
- tags: free-programming-books, java
JAAS in Action
https://www.gitbook.com/book/benoit74/jaas-in-action/details
- tags: free-programming-books, java
Introduction to Programming Using Java
http://math.hws.edu/javanotes/
David J. Eck
- tags: free-programming-books, java
Introduction to Programming in Java
http://introcs.cs.princeton.edu/java/home/
Robert Sedgewick and Kevin Wayne
- tags: free-programming-books, java
Introduction to Computer science using Java
http://chortle.ccsu.edu/java5/index.html
Bradley Kjell
- tags: free-programming-books, java
Google's Java Style Guide
https://google.github.io/styleguide/javaguide.html
- tags: free-programming-books, java
Data Structures in Java for the Principled Programmer (2007)
http://dept.cs.williams.edu/~bailey/JavaStructures/Book_files/JavaStructures.pdf
Duane A. Bailey (PDF)
- tags: free-programming-books, java
Core Servlets and JavaServer Pages, 2nd Ed. (2003)
Marty Hall and Larry Brown
- tags: free-programming-books, java
Category wise tutorials - J2EE
https://www.mkyong.com/all-tutorials-on-mkyong-com/
Yong Mook Kim
- tags: free-programming-books, java
Artificial Intelligence - Foundation of Computational Agents (2010)
http://artint.info/html/ArtInt.html
David Poole and Alan Mackworth
- tags: free-programming-books, java
Apache Jakarta Commons: Reusable Java Components
http://ptgmedia.pearsoncmg.com/images/0131478303/downloads/Iverson_book.pdf
Will Iverson (PDF)
- tags: free-programming-books, java
3D Programming in Java
http://www.mat.uniroma2.it/~picard/SMC/didattica/materiali_did/Java/Java_3D/Java_3D_Programming.pdf
Daniel Selman (PDF)
- tags: free-programming-books, java
用jersey构建REST服务
https://github.com/waylau/RestDemo
Spring Framework 4.x参考文档
https://github.com/waylau/spring-framework-4-reference
Spring Boot参考指南
https://github.com/qibaoguang/Spring-Boot-Reference-Guide
(翻译中)
REST 实战
https://github.com/waylau/rest-in-action
Netty 实战(精髓)
https://github.com/waylau/essential-netty-in-action
Netty 4.x 用户指南
https://github.com/waylau/netty-4-user-guide
MyBatis中文文档
http://mybatis.github.io/mybatis-3/zh/index.html
JSSE 参考指南
https://github.com/waylau/jsse-reference-guide
Jersey 2.x 用户指南
https://github.com/waylau/Jersey-2.x-User-Guide
Java 编码规范
https://github.com/waylau/java-code-conventions
Java Servlet 3.1 规范
https://github.com/waylau/servlet-3.1-specification
H2 Database 教程
https://github.com/waylau/h2-database-doc
Google Java编程风格指南
http://www.hawstein.com/posts/google-java-style.html
Apache Shiro 用户指南
https://github.com/waylau/apache-shiro-1.2.x-reference
Apache MINA 2 用户指南
https://github.com/waylau/apache-mina-2.x-user-guide
Activiti 5.x 用户指南
https://github.com/waylau/activiti-5.x-user-guide
Java 8 Kitabı
http://kodcu.com/java-8-ebook/
Програмування мовою Java для дітей, батьків, дідусів та бабусь
http://myflex.org/books/java4kids/java4kids.htm
Яків Файн
Sharing coding knowledge – CodingpediaOrg
java - Specifying JVM arguments when calling a jar file? - Stack Overflow
https://stackoverflow.com/questions/5891123/specifying-jvm-arguments-when-calling-a-jar-file
java -Xms256m -Xmx512m -Djava.awt.headless=true -jar filename.jar
java - What is reflection and why is it useful? - Stack Overflow
https://stackoverflow.com/questions/37628/what-is-reflection-and-why-is-it-useful
The name reflection is used to describe code which is able to inspect other code in the same system (or itself).
For example, say you have an object of an unknown type in Java, and you would like to ...
- :calendar: published on: 2009-01-01
- tags: java
Trail: The Reflection API (The Java™ Tutorials)
http://docs.oracle.com/javase/tutorial/reflect/index.html
Reflection is commonly used by programs which require the ability to examine or modify the runtime behavior of applications running in the Java virtual machine. This is a relatively advanced feature a...
- tags: java
Loader/Launcher – A Pattern to Bootstrap Java Applications - No Fluff Just Stuff
https://www.nofluffjuststuff.com/blog/vladimir_vivien/2011/10/loader_launcher__a_pattern_to_bootstra...
This pattern, named Loader/Launcher, separates the loading of your application’s classes from the booting of your application logic. The idea is to provide your own loader class that will load your cl...
- :calendar: published on: 2011-10-07
- tags: java
- :octocat: source code
Java 8 Stream – Read a file line by line
https://www.mkyong.com/java8/java-8-stream-read-a-file-line-by-line/
- Java 8 Read File + Stream
- Java 8 Read File + Stream + Extra
- BufferedReader + Stream
- :calendar: published on: 2015-10-29
- tags: java
GitHub - graphql-java/graphql-java: GraphQL Java implementation
https://github.com/graphql-java/graphql-java
This is a GraphQL Java implementation
Java Classloaders Tutorial - NoClassDefFoundError
https://zeroturnaround.com/rebellabs/rebel-labs-tutorial-do-you-really-get-classloaders/3/
NoClassDefFoundError is one of the most common problems that you can face when developing Java EE Java applications. The complexity of the root cause analysis and resolution process mainly depend of t...
- :calendar: published on: 2012-12-23
- tags: java
intellij idea - Error:java: javacTask: source release 8 requires target release 1.8 - Stack Overflow
http://stackoverflow.com/questions/29888592/errorjava-javactask-source-release-8-requires-target-rel...
- File > Settings > Build, Execution, Deployment > Java Compiler
- Change Target bytecode version to 1.8 of the module that you are working for
ROME - Home
https://rometools.github.io/rome/
ROME is a Java framework for RSS and Atom feeds. It's open source and licensed under the Apache 2.0 license.
ROME includes a set of parsers and generators for the various flavors of syndication feeds...
- tags: java, rss, atom
- :octocat: source code
mybatis – MyBatis 3 | Introduction
http://www.mybatis.org/mybatis-3/
MyBatis is a first class persistence framework with support for custom SQL, stored procedures and advanced mappings. MyBatis eliminates almost all of the JDBC code and manual setting of parameters and...
- tags: mybatis, jdbc, java, orm
- :octocat: source code
Database Versioning with Flyway and JavaButton - CloseLearn More
https://auth0.com/blog/incrementally-changing-your-database-with-java-and-flyway/
In this article, we are going to learn about Flyway, a solution that helps developers to handle version control of database schemas and data on Java applications.
- tags: java, flyway, spring-boot
Project Jigsaw
http://openjdk.java.net/projects/jigsaw/
We propose to design and implement a standard module system for the Java SE Platform and to apply that system to the Platform itself, and to the JDK. The module system should be powerful enough to mod...
- tags: java
Tutorial – REST API design and implementation in Java with Jersey and Spring – CodingpediaOrg
http://www.codingpedia.org/ama/tutorial-rest-api-design-and-implementation-in-java-with-jersey-and-s...
In the blog post I will present you how to “beautifully” design a REST API and also, how to implement it in Java with the Jersey framework. The RESTful API developed in this tutorial will demonstrate ...
- :calendar: published on: 2014-05-31
- tags: spring, java, jersey, rest
- :octocat: source code
Mockito framework site
Tasty mocking framework for unit tests in Java
- tags: java, testing, dev-tools, testing
- :octocat: source code
Working with Manifest Files: The Basics
https://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html
JAR files support a wide range of functionality, including electronic signing, version control, package sealing, and others. What gives a JAR file this versatility? The answer is the JAR file's manife...
- tags: java
Java Generics Tutorial
http://tutorials.jenkov.com/java-generics/index.html
The Java Generics features were added to the Java language from Java 5. Generics add a way to specify concrete types to general purpose classes and methods that operated on
Objectbefore. It sounds ...
- tags: java
Java Classloaders Tutorial | zeroturnaround.com
https://zeroturnaround.com/rebellabs/rebel-labs-tutorial-do-you-really-get-classloaders/
Classloaders are at the core of the Java language. Java EE containers, OSGi, various web frameworks and other tools use classloaders heavily. Yet, something goes wrong with classloading, would you kno...
- tags: java
Do You Really Get Class Loaders? - YouTube
Class loaders are at the core of the Java language. Java EE containers, OSGi, NetBeans modules, Tapestry 5, Grails, and many others use class loaders heavily. Yet if something went wrong, would you kn...
- tags: java
Java Classloader - Wikipedia
https://en.wikipedia.org/wiki/Java_Classloader
The Java Classloader is a part of the Java Runtime Environment that dynamically loads Java classes into the Java Virtual Machine. Usually classes are only loaded on demand. The Java run time syste...
- tags: java
Generics: How They Work and Why They Are Important
http://www.oracle.com/technetwork/articles/java/juneau-generics-2255374.html
This article begins by providing a simple explanation of generics, along with presenting some basic concepts. After taking a look at the basic concepts, we will dive into some scenarios demonstrating ...
- tags: java
Java 8 Optional: How to Use it
http://blog.jhades.org/java-8-how-to-use-optional/
Java 8 comes with a new
Optionaltype, similar to what is available in other languages. This post will go over how this new type is meant to be used, namely what is it's main use case.
- tags: java
Lesson: Regular Expressions (The Java™ Tutorials > Essential Classes)
http://docs.oracle.com/javase/tutorial/essential/regex/index.html
This lesson explains how to use the `java.util.regex API for pattern matching with regular expressions. Although the syntax accepted by this package is similar to the Perl prog...
VisualVM: Home
All-in-One Java troubleshooting Tool. VisualVM is a visual tool integrating commandline JDK tools and lightweight profiling capabilities. Designed for both development and production time use.
- tags: java, troubleshooting, dev-tools
Tired of Null Pointer Exceptions? Consider Using Java SE 8's Optional!
http://www.oracle.com/technetwork/articles/java/java8-optional-2175753.html
Make your code more readable and protect it against null pointer exceptions. Code examples are present.
- tags: java, exception-handling
Java Exception Handling
http://tutorials.jenkov.com/java-exception-handling/index.html
This trail (set of articles) digs deeper into exception handling in Java. The trail covers various do's and dont's of Java exception handling. It also covers a few techniques for efficient and less er...
- tags: java, exception-handling
Java Regex - Tutorial
http://www.vogella.com/tutorials/JavaRegularExpressions/article.html
This tutorial introduces the usage of regular expressions and describes their implementation in Java. It also provides several Java regular expression examples.