The Java Ecosystem
Components of Java
Java Development Kit (JDK)
Java Runtime Environment (JRE)
Java Virtual Machine (JVM)
Java SE API
Integrated Development Environment (IDE)
IntelliJ IDEA
Eclipse
NetBeans
Frameworks and Libraries
Web frameworks
- Spring Framework
- Servlet & JSP/JSF
Web Security frameworks
- Spring Security
ORM frameworks
- Hibernate
- MyBatis
- MyBatisPlus
Web services frameworks
- Spring Cloud
- Dropwizard
- Quarkus
- Micronaut
- Vert.x
Testing frameworks
- JUnit
- TestNG
- Mockito
Libraries
- Commons:
commons-lang
,commons-io
,guava
- Logging:
logback
,log4j2
,slf4j
- Web
- Data validation:
spring-boot-starter-validation
- API documentation:
swagger
- Template engines:
velocity
,freemarker
- Data validation:
- Data access clients
- MySQL clients:
mysql-connector-java
- JDBC Connection pools:
druid
,druid-spring-boot-starter
,commons-dbcp
,HikariCP
- Page query:
pagehelper
- Redis clients:
jedis
,spring-boot-starter-data-redis
- Elasticserach clients:
elasticsearch-java
,elasticsearch-rest-client
- MySQL clients:
- JSON & XML & HTML Parser
- JSON:
jackson
,org.json
,gson
,json-path
- HTML:
jsoup
- JSON:
- HTTP Client
okhttp
- Document processing
- Office document:
poi
- PDF document:
pdfbox
- Office document:
- Others
- Reduce boilerplate code:
lombok
- Reduce boilerplate code:
Build Tools
Maven
Gradle
Application Servers
Apache Tomcat
WildFly (formerly JBoss)
Cloud-Native and Microservices
Spring Cloud
MicroProfile
Community Support
The Java community is vast and vibrant, with numerous online resources, forums, and user groups.
- Stack Overflow. Popularity rankings: Java is 3rd.
- GitHub. Top programming languages: Java is 3rd. GitHub’s yearly State of the Octoverse
- TIOBE Index.
- The RedMonk Programming Language Rankings
- PYPL PopularitY of Programming Language