Jodd - Java界的瑞士军刀轻量级工具包!
Jodd介绍
Jodd是对于Java开发更便捷的开源迷你框架,包含工具类、实用功能的集合,总包体积不到1.7M。
Jodd构建于通用场景使开发变得简单,但Jodd并不简单!它能让你把事情做得更好,实现你的想法,让你享受编码的乐趣。
简而言之,如果你准备造轮子,先看看Jodd实现了没。你可以把Jodd想象成Java的”瑞士军刀”,不仅小,锋利而且包含许多便利的功能。
Jodd提供的功能
提供操作Java bean,
可以从各种数据源加载 Bean,
简化 JDBC 的接连与代码,
剖析 SQL 查询,
处理时间与日期,
操作与格式化 String,
搜索本地硬盘上的文件,
帮助处理 Servlet 请求等。
包含一个很小但实用的基于JSP的MVC框架。
Jodd组成
Jodd 被分成众多模块,按需选择。
Jodd工具包
高性能的工具集合
TypeConverter 一个强大的类型转换工具
BeanUtil 高效的 Bean 工具,支持嵌套的属性,以及标准的集合类
Base64/Base32
JDateTime 增强的时间类
IO 快速高性能的各种 Buffer、Writer、OutputStream
Wildcard 通配符工具
Servlet Servlet 工具,JSP 的标签、函数扩展
FindFile/ClassFinder 强大的文件/类搜索工具,支持通配符&正则表达式匹配
Cache 简单易用的 LRU、LRU、FIFO 缓存
StringUtil 强大的字符串处理工具
Madvoc
轻量级快速开发MVC框架
自动扫描 Actions & Results
参数自动注入,支持嵌套的属性注入,支持标准集合参数的注入
自动导出需要输出的参数
支持通配符/正则表达式路由地址
支持 REST 风格的 URL
支持通过配置文件设置 Action 的拦截器
开放的 API,可轻松扩展
HTTP
轻量级Http客户端
基于socket
支持 cookies
支持上传文件
支持自定义 HTTP 头
支持 gzip
支持 Basic authentication
Props
增强的properties
支持 UTF-8 编码
支持插值操作
支持 ini 类型的区段
支持使用 += 附加值
支持多行模式
易用的 Email 接收发送工具,基于 javax.mail
支持 SSL
支持添加附件
支持 POP3、IMAP
IMAP 接受模式支持定义过滤器
支持解析 EML 文件
Petite
轻量级 IoC 容器
Db & DbOom
轻量级 ORM 框架
Lagarto
高性能的 xml/html 解析框架
Jerry
HTML 解析框架,Java 中的 jQuery,基于 Lagarto
VTor
基于注解的字段验证框架
可设置多配置
易扩展
Proxetta
高性能的代理生成器
总结
可以看出,Jodd集合了Apache的Commons工具包(Lang,IO,BeanUtils,Codec,Email)中的核心功能,MVC、IOC/DI、ORM统统使用自有解决方案(想想Spring),加上简化而优雅的Http处理类(流式调用,媲美基于HttpClient的HCFluent),类似JQuery般操作HTML的Jerry,媲美Joda的JDataTime,甚至疯狂的定义了自己的Prop类用于管理属性。
总之,Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.7 Mb
更多关于Jodd的介绍与使用可以到它的官网:https://jodd.org/
送书活动,大话代码架构 x 5 本

本书以一个真实的项目案例——“晋商卡”从无到有的整个开发过程为主线,用大话的语言风格,风趣幽默地讲解了代码架构的相关知识。本书通过5个人物角色,模拟实际的项目开发过程,以对话形式抛出问题,然后解决问题,让你在身临其境中轻松愉快地掌握代码架构的知识。
本书涵盖的主要内容有敏捷开发的方法论、项目开发流程、传统的三层架构、源代码管理、几种常见的实体关系模型、使用IoC和接口、使用缓存和静态页面减少服务器压力、在项目中使用消息队列、尝试使用前端框架、微信公众号开发及小程序开发。
如果对你有用,欢迎分享到朋友圈
Jodd - Java界的瑞士军刀轻量级工具包!的更多相关文章
- [置顶] 提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)
官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + t ...
- 提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)
官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + t ...
- 基于java.util.logging实现轻量级日志记录库(增加根据当前类class初始化,修复线程池模型(javaEE)下的堆栈轨迹顺序与当前调用方法不一致问题)
前言: 本章介绍自己写的基于java.util.logging的轻量级日志记录库(baseLog). 该版本的日志记录库犹如其名,baseLog,是个实现日志记录基本功能的小库,适合小型项目使用,方便 ...
- 如何在Java生态圈选择一个轻量级的RESTful框架?
在微服务流行的今天,我们会从纵向和横向分解代码的逻辑,将一些独立的无状态的代码单元实现为微服务,可以将它们发布到一些分布式计算单元或者Docker中,并在性能需要的时候及时地创建更多的服务单元.微服务 ...
- Java开发必用的工具包
Java是最流行的开源语言之一. 有赖于Java的开源,涌现出一大批优秀的开源框架,基本涵盖了开发中的方方面面,让程序员可以专注于自己的业务逻辑. 今天,我们就来聊聊在开发中,经常被我们所忽略的[ ...
- java 偏向锁、轻量级锁及重量级锁synchronized原理
Java对象头与Monitor java对象头是实现synchronized的锁对象的基础,synchronized使用的锁对象是存储在Java对象头里的. 对象头包含两部分:Mark Word 和 ...
- Java Servlet开发的轻量级MVC框架最佳实践
在Servlet开发的工程实践中,为了减少过多的业务Servlet编写,会采用构建公共Servlet的方式,通过反射来搭建轻量级的MVC框架,从而加快应用开发. 关于Servlet开发的基础知识,请看 ...
- JDK9版本以上Java独有的一个轻量级小工具,你知道吗?jshell
jshell,是JavaJDK9这个大版本更新以来,带来的一个轻量级小工具.我们再也不用进入Java目录,编写一个Java文件,然后再去编译,最后才能执行它. 这里,你可以直接写一个小功能,就能去实现 ...
- 一个Bug,让我发现了 Java 界的.AJ(锥)!
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 话我放这,踩过的坑越多头发越少! 说来也是奇怪,只要是学编程的,从初次接触的 Jav ...
随机推荐
- Redis探索之路(四):Redis的五种数据类型Set和ZSet
一:Set无需集合 Set是个集合,string类型的无需集合,通过hash table实现,添加删除查找复杂度都是0(1).对集合我们可以取并集,交集和差集.通过这些操作我们可以实现sns中的好友推 ...
- leetcode-并查集
- 题目:130 并查集: class Solution: def solve(self, board: List[List[str]]) -> None: """ ...
- Kotlin -help
{ kotlin: run Kotlin programs, scripts or REPL. Usage: kotlin <options> <command> <ar ...
- Apache 环境变量配置
在path 中加入 C:\__S_D_K__\AndroidApache\apache-ant-1.9.14\bin 我的路径在C盘
- CSS案例2(一个简单的新闻网页)
知识点: 1.一般网页不用纯黑,用淡灰色 3c3c3c 2.text-align: center; /* 文字水平居中 */ 3.font-weight: normal; /* 清除加粗效果 ...
- hdu多校第八场 1003 (hdu6659) Acesrc and Good Numbers 数论/打表
题意: 对于某数k,若数字d在1-k中出现次数恰好为k,则称k为好数. 给定d,x,求x以内,对于d而言最大的好数.k范围1e18. 题解: 打表二分即可. 但是,1e18的表是没法打出来的,只能在o ...
- python round, ceil, flooor
round(num, n) 保留n位小数 round(80.23456, 2) : 80.23 round(100.000056, 3) : 100.0 round(-100.000056, 3) : ...
- 2.RabbitMQ Window环境安装
RabbitMQ环境的安装分别介绍在Window和Linux下两个环境的安装过程. Window安装RabbitMQ,RabbitMQ安装文件是64位的,所以Window系统必须是64位的.安装R ...
- 事件绑定addEventListener
通过addEventListener监听函数实现的dom事件绑定 addEventListener可以为当前dom添加一个事件(这个事件可以是个已有的事件),这就无法避免我们在写代码的时候重复去绑定同 ...
- jvm-多线程
多线程的目的 为什么要使用多线程?可以简单的分两个方面来说: 在多个cpu核心下,多线程的好处是显而易见的,不然多个cpu核心只跑一个线程其他的核心就都浪费了: 即便不考虑多核心,在单核下,多线程也是 ...