Jodd介绍

Jodd是对于Java开发更便捷的开源迷你框架,包含工具类、实用功能的集合,总包体积不到1.7M。

Jodd构建于通用场景使开发变得简单,但Jodd并不简单!它能让你把事情做得更好,实现你的想法,让你享受编码的乐趣。

简而言之,如果你准备造轮子,先看看Jodd实现了没。你可以把Jodd想象成Java的”瑞士军刀”,不仅小,锋利而且包含许多便利的功能。

Jodd提供的功能

  1. 提供操作Java bean,

  2. 可以从各种数据源加载 Bean,

  3. 简化 JDBC 的接连与代码,

  4. 剖析 SQL 查询,

  5. 处理时间与日期,

  6. 操作与格式化 String,

  7. 搜索本地硬盘上的文件,

  8. 帮助处理 Servlet 请求等。

  9. 包含一个很小但实用的基于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

易用的 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界的瑞士军刀轻量级工具包!的更多相关文章

  1. [置顶] 提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)

    官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + t ...

  2. 提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)

    官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + t ...

  3. 基于java.util.logging实现轻量级日志记录库(增加根据当前类class初始化,修复线程池模型(javaEE)下的堆栈轨迹顺序与当前调用方法不一致问题)

    前言: 本章介绍自己写的基于java.util.logging的轻量级日志记录库(baseLog). 该版本的日志记录库犹如其名,baseLog,是个实现日志记录基本功能的小库,适合小型项目使用,方便 ...

  4. 如何在Java生态圈选择一个轻量级的RESTful框架?

    在微服务流行的今天,我们会从纵向和横向分解代码的逻辑,将一些独立的无状态的代码单元实现为微服务,可以将它们发布到一些分布式计算单元或者Docker中,并在性能需要的时候及时地创建更多的服务单元.微服务 ...

  5. Java开发必用的工具包

    Java是最流行的开源语言之一. 有赖于Java的开源,涌现出一大批优秀的开源框架,基本涵盖了开发中的方方面面,让程序员可以专注于自己的业务逻辑. ​ 今天,我们就来聊聊在开发中,经常被我们所忽略的[ ...

  6. java 偏向锁、轻量级锁及重量级锁synchronized原理

    Java对象头与Monitor java对象头是实现synchronized的锁对象的基础,synchronized使用的锁对象是存储在Java对象头里的. 对象头包含两部分:Mark Word 和 ...

  7. Java Servlet开发的轻量级MVC框架最佳实践

    在Servlet开发的工程实践中,为了减少过多的业务Servlet编写,会采用构建公共Servlet的方式,通过反射来搭建轻量级的MVC框架,从而加快应用开发. 关于Servlet开发的基础知识,请看 ...

  8. JDK9版本以上Java独有的一个轻量级小工具,你知道吗?jshell

    jshell,是JavaJDK9这个大版本更新以来,带来的一个轻量级小工具.我们再也不用进入Java目录,编写一个Java文件,然后再去编译,最后才能执行它. 这里,你可以直接写一个小功能,就能去实现 ...

  9. 一个Bug,让我发现了 Java 界的.AJ(锥)!

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 话我放这,踩过的坑越多头发越少! 说来也是奇怪,只要是学编程的,从初次接触的 Jav ...

随机推荐

  1. 在Vue项目中,添加的背景图片在服务器上不显示,如何处理

    遇到的问题: 在vue项目开发过程中,我们常常会在页面中添加背景图片.可是当我们在样式中添加了背景图片,编译打包部署到服务器上时,发现图片并不能显示出来,这是为什么呢~~~ 我们一般写的css样式如下 ...

  2. css reset初始化样式

    原文:https://www.cnblogs.com/caojiayan/p/6343917.html /* CSS Document */ html, body, div, span, object ...

  3. 使用Git 上传文件到云端(版本库)

    第一步:本地初始化Git版本库 git init 第二步:链接码云(云端) git remote add orgin "你的远程仓库地址"(复制链接后结尾是.git,如果没有记得加 ...

  4. R语言 变量

    R语言变量 变量为我们提供了我们的程序可以操作的命名存储. R语言中的变量可以存储原子向量,原子向量组或许多Robject的组合. 有效的变量名称由字母,数字和点或下划线字符组成. 变量名以字母或不以 ...

  5. fastJson中常用方法以及遇到的“坑”

    1.使用fastJson,首先引入fastJson依赖 <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> & ...

  6. CentOS 启动提示unexpected inconsistency;RUN fsck MANUALLY, ntfs的input/output Error,InPageError c000009c使用chkdsk修复磁盘,12款Linux系统恢复工具

    CentOS这两天服务器出了问题了,提示如下: unexpected inconsistency;RUN fsck MANUALLY An error occurred during the file ...

  7. shell设置时间递减脚本

    经常要用shell来做时间的定时任务,尤其是用sqoop脚本拉取数据的时候,那么假如当你要导入数据是残缺的时候呢,我写了一个能自定义时间并逐条递减的程序 #!/bin/bash   . /etc/pr ...

  8. 自动化测试工具2-testcomplete

    今天来说说testcomplete的使用 录了一个简单案例视频,网址如下:https://v.qq.com/x/page/f05116a062y.html 第一步是创建一个工程: 输入工程名,和选择工 ...

  9. storm0.91集群部署

    事先配置2台服务器配置好zookeeper,在配置文件中用zookeeper管理集群,配置文件如下 配置文件/conf/storm.yaml supervisor.slots.ports: 对于每个S ...

  10. vue中excal表格的导入和导出

    注意:vue中要实现表格的导入与导出,首先要install两个依赖, npm install -S file-saver xlsx  和  npm install -D script-loader.其 ...