A Java framework is a platform for developing software applications. It provides a foundation on Programmers can build programs for a specific platform.  Java frameworks may include predefined classes and functions that can be used to process input, manage hardware devices, and interact with system software. but a perfect choice can depend on a Programmers specific needs, preferences, and skill level. Every framework is good to do something and probably bad to do something else. In this article i have shared Top 10 Java frameworks to use in 2018.

Java frameworks

1.Spring boot

Spring Boot makes it easy to create Spring-powered, production-grade applications and services with absolute minimum fuss. It takes an opinionated view of the Spring platform so that new and existing users can quickly get to the bits they need. You can use Spring Boot to create stand-alone Java applications that can be started using java -jar or more traditional WAR deployments.

Github stats

Spring Boot
Forks: 22016
Stars: 32202
Open issues: 394
Latest tag: v2.1.1.RELEASE
git clone https://github.com/spring-projects/spring-boot.git

2.  Spring Framework

The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications – on any kind of deployment platform. A key element of Spring is infrastructural support at the application level: Spring focuses on the “plumbing” of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.

Github stats

Spring Framework
Forks: 16202
Stars: 25429
Open issues: 181
Latest tag: v5.1.3.RELEASE
git clone https://github.com/spring-projects/spring-framework.git


3. Dubbo Project

Dubbo is a high-performance, java based RPC framework open-sourced by Alibaba. As in many RPC systems, dubbo is based around the idea of defining a service, specifying the methods that can be called remotely with their parameters and return types. On the server side, the server implements this interface and runs a dubbo server to handle client calls. On the client side, the client has a stub that provides the same methods as the server.


Github stats

Apache Dubbo (incubating) is a high-performance, java based, open source RPC framework.
Forks: 15865
Stars: 23413
Open issues: 289
Latest tag: dubbo-2.6.5
git clone https://github.com/apache/incubator-dubbo.git

4. libGDX

libGDX is a cross-platform one of the best Java frameworks for game development based on OpenGL (ES) that works on Windows, Linux, Mac OS X, Android, your WebGL enabled browser and iOS. A libgdx application has a well defined life-cycle, governing the states of an application, like creating, pausing and resuming, rendering and disposing the application.

Github stats

Desktop/Android/HTML5/iOS Java game development framework
Forks: 5780
Stars: 14763
Open issues: 319
Latest tag: gdx-parent-1.9.9
git clone https://github.com/libgdx/libgdx.git


5. Play Framework

The Play Framework combines productivity and performance making it easy to build scalable web applications with Java and Scala. Play is developer friendly with a “just hit refresh” workflow and built-in testing support. With Play, applications scale predictably due to a stateless and non-blocking architecture. By being RESTful by default, including assets compilers, JSON & WebSocket support, Play is a perfect fit for modern web & mobile applications

Github stats

Play Framework
Forks: 3683
Stars: 10867
Open issues: 396
Latest tag: 2.7.0-RC8
git clone https://github.com/playframework/playframework.git


Selenium is an umbrella project encapsulating a variety of tools and libraries enabling web browser automation. Selenium specifically provides infrastructure for the W3C WebDriver specification — a platform and language-neutral coding interface compatible with all major web browsers. Selenium has the support of some of the largest browser vendors who have taken (or are taking) steps to make Selenium a native part of their browser. It is also the core technology in countless other browser automation tools, APIs and frameworks.

Github stats

A browser automation framework and ecosystem.
Forks: 4495
Stars: 12834
Open issues: 503
Latest tag: selenium-3.141.59
git clone https://github.com/SeleniumHQ/selenium.git

7. Spark

Spark is a free and open-source software web application framework and domain-specific language written in Java. It is an alternative to other Java web application frameworks such as JAX-RS, Play framework and Spring MVC. It runs on an embedded Jetty web server by default, but can be configured to run on other webservers.

Github stats

A simple expressive web framework for java. News: Spark now has a kotlin DSL https://github.com/perwendel/spark-kotlin
Forks: 1425
Stars: 7934
Open issues: 215
Latest tag: 2.7.2
git clone https://github.com/perwendel/spark.git


8. MyBatis 3

The MyBatis SQL mapper framework makes it easier to use a relational database with object-oriented applications. MyBatis couples objects with stored procedures or SQL statements using a XML descriptor or annotations. Simplicity is the biggest advantage of the MyBatis data mapper over object relational mapping tools.

Github stats

MyBatis SQL mapper framework for Java
Forks: 5686
Stars: 9230
Open issues: 127
Latest tag: mybatis-3.4.6
git clone https://github.com/mybatis/mybatis-3.git


9. Guice

Guice aims to make development and debugging easier and faster, not harder and slower. In that vein, Guice steers clear of surprises and magic. You should be able to understand code with or without tools, though tools can make things even easier. When errors do occur, Guice goes the extra mile to generate helpful messages. Guice helps you design better APIs, and the Guice API itself sets a good example. Guice is not a kitchen sink. We justify each feature with at least three use cases. When in doubt, we leave it out. We build general functionality which enables you to extend Guice rather than adding every feature to the core framework.

Github stats

Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 6 and above, brought to you by Google.
Forks: 1148
Stars: 7498
Open issues: 318
Latest tag: snapshot20101120
git clone https://github.com/google/guice.git


10. Hibernate

Hibernate framework is an advanced ORM framework that lets you perform the database operation on Java objects. This framework carries the best features that help backend developers fine-tune data access layer.

Github stats

Hibernate's core Object/Relational Mapping functionality
Forks: 2404
Stars: 3540
Open issues: 100
Latest tag: 6.0.0.Alpha1
git clone https://github.com/hibernate/hibernate-orm.git


Looking For Best Java IDE? try MyEclipse !

MyEclipse is a Java IDE that includes the best tools for the full stack developer. With MyEclipse, it’s simple to create a dynamic front end along with a powerful back-end—the combination that is critical to today’s enterprise.
MyEclipse delivers everything the enterprise developer needs to efficiently create powerful applications using the latest technologies.

IntelliJ vs Eclipse


  • Commercial-grade tools built on top of the latest Eclipse Java EE
  • Java EE coding enhanced for Spring and Maven
  • Superior Angular & TypeScript coding/development support
  • Seamless development of popular app servers and databases
  • CodeLive with Live Preview for faster HTML & CSS changes
  • JSjet for exceptional JavaScript coding and debugging
Download now