Discover 9 Must‑Use Dromara Java Projects to Supercharge Your Development
This article introduces the Dromara Java open‑source community and showcases nine powerful projects—including Sa‑Token, Forest, LiteFlow, JPom, Cubic, Sureness, TLog, ImageCombiner, and MaxKey—detailing their core features, typical use cases, and how they can dramatically improve productivity for backend developers.
Dromara is a Java open‑source organization founded by the author of Apache ShenYu (formerly Soul Gateway) and brings together multiple Java open‑source authors to share resources and promote the development of Java open‑source projects.
1. Sa‑Token
Sa‑Token is a lightweight Java permission authentication framework that covers login authentication, permission checks, session management, SSO, OAuth2.0, and micro‑service gateway authentication.
Typical usage example:
// Write the current account ID into the session during login
StpUtil.login(10001);
// Check login status; throws NotLoginException if not logged in
StpUtil.checkLogin();Other common APIs (one‑line calls) include login, logout, role/permission checks, token retrieval, safe mode, and session handling.
2. Forest
Forest is a powerful HTTP client framework that lets you declare HTTP requests directly on Java interfaces, turning method calls into HTTP calls.
Example of a declarative API for Amap:
/**
* Amap service client interface
*/
@BaseRequest(baseURL = "http://ditu.amap.com")
public interface Amap {
@Get("/service/regeo")
Map getLocation(@Query("longitude") String longitude, @Query("latitude") String latitude);
}
Amap amap = Forest.client(Amap.class);
Map locationInfo = amap.getLocation("32.1242832", "56.3290434");Forest supports automatic parameter binding, JSON/XML conversion, and offers richer annotations than Retrofit or Feign while remaining lightweight and framework‑agnostic.
3. LiteFlow
LiteFlow is an ultra‑lightweight, fast, and stable component‑based workflow/rule engine designed to decouple complex business logic.
Define components with annotations:
@LiteflowComponent(id = "a", name = "Component A")
public class ACmp extends NodeComponent {
@Override
public void process() {
// business logic
}
}Configure execution chains via XML, YAML, or JSON, allowing hot‑reloading and flexible rule storage.
4. JPom
JPom is a lightweight, low‑intrusion DevOps tool for online building, automatic deployment, daily operations, and project monitoring, especially suited for small‑to‑medium teams.
Key features include project management, real‑time console logs, one‑click deployment, multi‑node distribution, SSH terminal, resource monitoring, user permission isolation, and Nginx/SSL management.
Installation example (Agent):
yum install -y wget && wget -O install.sh https://dromara.gitee.io/jpom/docs/install.sh && bash install.sh Agent5. Cubic
Cubic is an all‑in‑one problem‑location platform offering thread‑stack monitoring, thread‑pool monitoring, dynamic Arthas command sets, and dependency analysis.
Features include compatibility across IDC/ECS/Docker, zero‑configuration agent deployment, comprehensive application monitoring, and extensible plug‑in architecture.
6. Sureness
Sureness is a REST‑API‑first authentication and authorization framework that avoids the heavy dependencies of Shiro or Spring Security.
It supports RBAC, dynamic permission updates, multiple authentication strategies (JWT, Basic, Digest, etc.), and works with various HTTP containers, WebSocket, and many Java frameworks (Spring Boot, Quarkus, Javalin, Ktor, Micronaut, JFinal, Solon, etc.).
Benchmark: Sureness adds only 0.026 ms overhead compared with 0.088 ms for Shiro and 0.116 ms for Spring Security.
7. TLog
TLog is a log‑tagging framework that automatically adds TraceId and upstream/downstream information to each log line, enabling lightweight distributed tracing without extra storage.
It integrates with Log4j, Log4j2, Logback, and supports Dubbo, Dubbox, Spring Cloud, Spring Cloud Gateway, Soul, HttpClient, OkHttp, as well as task frameworks like Quartz and XXL‑Job.
8. ImageCombiner
ImageCombiner is a Java‑only server‑side image composition tool that merges images, text, and shapes with positioning, scaling, rotation, transparency, and other effects.
Simple usage example:
public void simpleDemo() throws Exception {
ImageCombiner combiner = new ImageCombiner("http://xxx.com/image/bg.jpg", OutputFormat.JPG);
combiner.addImageElement("http://xxx.com/image/product.png", 0, 300)
.setAlpha(.8f)
.setRotate(45)
.setBlur(20);
combiner.addTextElement("Weekend Sale", 0, 150, 1400)
.setCenter(true)
.setColor(Color.Red);
combiner.combine();
InputStream is = combiner.getCombinedImageStream();
combiner.save("d://image.jpg");
}9. MaxKey
MaxKey is an enterprise‑grade IAM and single sign‑on (SSO) system supporting OAuth2/OpenID Connect, SAML, JWT, CAS, SCIM, and offering user lifecycle management, RBAC, and resource management.
Built on Spring, MySQL, Tomcat, Redis, and Apache Kafka, it provides high extensibility, multi‑protocol support, and a modern UI for identity management.
All projects are open‑source, hosted on Gitee and GitHub, and can significantly boost development efficiency when adopted.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Java Backend Technology
Focus on Java-related technologies: SSM, Spring ecosystem, microservices, MySQL, MyCat, clustering, distributed systems, middleware, Linux, networking, multithreading. Occasionally cover DevOps tools like Jenkins, Nexus, Docker, and ELK. Also share technical insights from time to time, committed to Java full-stack development!
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
