FANDOM


Frameworks

IoC

Spring Framework

Guice

Data Access

iBATIS

MyBatis

MyBatis-Spring

MyBatis-Spring-Boot-Starter

MyBatis Type Handlers for JSR 310: Date and Time API

MV*

Stripes

  • http://www.stripesframework.org/
  • Desc. : a presentation framework for building web applications using the latest Java technologies.
  • License : Apache License v2

Integration

Apache Camel

Spring Integration

ActiveMQ

Networking

Netty

Apache MINA

Distributed

Storm

Apache River

Logging

SLF4J

Logback

Log4j

Log4j Extra

Log4j 2

  • http://logging.apache.org/log4j/2.x/
  • Desc. : an upgrade to Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides many of the improvements available in Logback while fixing some inherent problems in Logback's architecture.

log4jdbc

  • http://code.google.com/p/log4jdbc/
  • Desc. : a Java JDBC driver that can log SQL and/or JDBC calls (and optionally SQL timing information) for other JDBC drivers using the Simple Logging Facade For Java (SLF4J) logging system.

Meta

Bean Validation

Hibernate Validator

Cheker Framework

AOP

AspectJ

Templating

FreeMarker

  • http://freemarker.sourceforge.net/
  • Desc. : a "template engine"; a generic tool to generate text output (anything from HTML to autogenerated source code) based on templates.
  • License : liberal BSD-style open source license
  • Written in : Java

Rule Engine

Drools
  • http://www.drools.org/
  • Desc. : a Business Rules Management System (BRMS) solution
  • License :
  • Written in :
  • Sources
  • Maven artifacts

Testing

JUnit

JUnit 5

TestNG

Mockito

Springockito

EasyMock

REST Assured

  • Readings
    • RequestSpecBuilder source
      • Both RequestSpecification and RequestSpecification are not immutable nor thread-safe, even worse every call of RequestSpecification.build would return same object.
      • Both RequestSpecification and RequestSpecification should be in method local scope.

Hamcrest

Web Services

Jersey

Batch

Spring Batch

JBeret

  • https://github.com/jberet/jsr352
  • Desc. : an implementation of JSR 352 (Batch Applications for the Java Platform).
  • License : Eclipse Public License 1.0
  • Readings

Security

Apache Shiro

  • http://shiro.apache.org/
  • Desc. : a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.
  • License : Apache License, Version 2.0
  • Readings

Libraries

Fundamental

Apache Commons

Commons Lang
Commons Collections
Commons Validator
Commons IO
Commons Codec
Commons Compress
Commons Math
Commons Configuration
Commons DBCP
Commons Imaging

Commons Collections with Generics

Guava

Javolution

  • http://javolution.org/
  • Desc. : a real-time library aiming to make Java or Java-Like/C++ applications faster and more time predictable.
  • License : BSD License
  • Readings

Kryo

AssertJ

Joda Time

Typesafe Config Library

ZeroTurnaround ZIP Library

Concurrency

RxJava

  • https://github.com/ReactiveX/RxJava
  • Desc. : Apache License 2.0
  • License : a Java VM implementation of Reactive Extensions: a library for composing asynchronous and event-based programs by using observable sequences.

Prometheus

Jetlang

  • http://code.google.com/p/jetlang/
  • Desc. : a complement to the java.util.concurrent package introduced in 1.5 and should be used for message based concurrency similar to event based actors in Scala.

Annotations

Immutables

Reflection

BCEL

ASM

cglib

Javassist

ReflectASM

EL

OGNL (Object Graph Navigation Library)

  • http://commons.apache.org/proper/commons-ognl/
  • Desc. : an expression language for getting and setting properties of Java objects, plus other extras such as list projection and selection and lambda expressions.
  • License : Apache License, Version 2.0

Java Expression Language (JEXL)

  • http://commons.apache.org/jexl/
  • Desc. : a library intended to facilitate the implementation of dynamic and scripting features in applications and frameworks written in Java.

MVEL

Parsing

javaparser

JTidy

HtmlCleaner

jsoup

Rhino

SnakeYAML

XML

JAXP

  • https://jaxp.java.net/
  • Desc. : enables applications to parse, transform, validate and query XML documents using an API that is independent of a particular XML processor implementation.

Xerces2

Xalan

JAXB

EclipseLink MOXy

Saxon

Jaxen

PsychoPath

Woodstox

  • http://woodstox.codehaus.org/
  • Desc. : a high-performance validating namespace-aware StAX-compliant (JSR-173) Open Source XML-processor written in Java.
  • License : LGPL 2.1 and ASL 2.0

JARV

MSV

  • https://msv.java.net/
  • Desc. : a Java technology tool to validate XML documents against several kinds of XML schemas.
  • License : BSD

ph-schematron

JSON

Jackson

jsonp

Jayway JsonPath

google-gson

json-schema-validator

Scheduling

Quartz

Networking

Apache HttpComponents

JSch

Connectivity

c3p0

  • http://www.mchange.com/projects/c3p0/
  • Desc. : easy-to-use library for making traditional JDBC drivers "enterprise-ready" by augmenting them with functionality defined by the jdbc3 spec and the optional extensions to jdbc2.
  • License : LGPL v.2.1 or the EPL v.1.0
  • Maven artifacts : com.mchange » c3p0
  • Readings

TransactionsEssentials

Jolokia

SAP JCo

Security

Jasypt

Bouncy Castle

Formatter

xqpretty

Image Processing

JavaCV

ImgLib2

JCodec

Xuggler

Humble Video

imgscalr

Marvin

vlcj

Graphics

JGraphX

JFreeChart

JGoodies

Native

JNA

JavaCPP

misc

JUNG

  • http://jung.sourceforge.net/
  • Desc. : a software library that provides a common and extensible language for the modeling, analysis, and visualization of data that can be represented as a graph or network.

GEF

  • http://gef.tigris.org/
  • Desc. : to build a graph editing library that can be used to construct many, high-quality graph editing applications.
  • License : BSD License

SIGAR

  • http://sourceforge.net/projects/sigar/
  • Desc. : a cross-platform, cross-language library and command-line tool for accessing operating system and hardware level information in Java, Perl and .NET.

SvnClientAdapter

Vavr

Tools

Compiler Generator

ANTLR

JavaCC

JBurg

  • http://jburg.sourceforge.net/
  • a compiler construction tool that is often used in the compiler's back end to convert a tree-structured representation of a program into machine code.
  • License : Common Public License

Decompiler

JD Project

  • http://jd.benow.ca/
  • Desc. : aims to develop tools in order to decompile and analyze Java 5 “byte code” and the later versions.
  • License :

JODE

Obfuscator

ProGuard

yGuard

  • http://www.yworks.com/en/products_yguard_about.html
  • Desc. : a free Java bytecode obfuscator and shrinker that improves your software deployment by prohibiting unwanted access to your source code and drastically shrinking the processed Jar files at the same time.
  • License :

Code Analysis

FindBugs

Plug-ins

PMD

Sonar

JDepend

Checkstyle

Rat

JavaNCSS

Launcher

WinRun4J

Monitoring and Diagnostic

VisualVM

NetBeans Profiler

Java Mission Control

IBM Health Center

BTrace

Jolokia

  • https://jolokia.org/
  • Desc. : remote JMX with JSON over HTTP
  • License : Apache License, Version 2.0

jmxtrans

hawtio

  • http://hawt.io/
  • Desc. : a modular web console for managing your Java stuff
  • License : Apache License, v2.0
  • Sources :
  • Maven artifacts

Metrics

Dump Analysis

jhat

IBM HeapAnalyzer

Eclipse Memory Analyzer

IBM Thread and Monitor Dump Analyzer for Java

ThreadLogic

Thread Dump Analyzer

GCViewer

IBM Pattern Modeling and Analysis Tool for Java Garbage Collector

IBM Monitoring and Diagnostic Tools - Garbage Collection and Memory Visualizer

Installer

IzPack

  • http://izpack.org/
  • Desc. : A widely used tool for packaging applications on the Java platform.