Jodd 3.6.6 发布了,Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架。简单,却很强大!Jodd是一个通用目的的开源Java库少轻量级框架和组件:豆操纵的工具,更容易数据库访问,对网络工程建设代理Proxetta,优雅的时间处理,宠物JDateTime Madvoc分贝捆绑.你可以把Jodd想象成Java的“瑞士军刀”,不仅小,锋利而且包含许多便利的功能。
Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + HTML < 1.5 Mb
Jodd 被分成众多模块,按需选择,其中
jodd-core 一些工具类,包括Printf、JDateTime、StringUtil、Fast buffers等等
jodd-bean BeanUtil以及类型检查转换工具
jodd-props 更强大的Java Properties替代
jodd-email 更简单易用的e-mail收发
jodd-upload 处理HTTP上传
jodd-servlets 一些Servlet相关的工具类, 附带一套漂亮的JSP标签库
jodd-http 轻巧的HTTP客户端
小型框架模块有:
jodd-madvoc 一个MVC框架
jodd-petite 一个依赖注入容器
jodd-lagarto HTML/XML解析器,包含Jerry和CSSelly,让你像jQuery一样筛选HTML节点
jodd-lagarto-web Lagarto的Web扩展,包含Decora、HtmlStapler等等
jodd-proxetta 帮你实现动态代理,获取函数参数名
jodd-dboom 数据库访问的轻量级封装,可看作一个简单的ORM
jodd-json JSON解析、序列化
jodd-vtor 一个基于注解的字段验证框架
1. 提供操作Java bean
2. 可以从各种数据源加载Bean
3. 简化JDBC的接连与代码
4. 剖析SQL查询
5. 处理时间与日期
6. 操作与格式化String
7. 搜索本地硬盘上的文件
8. 帮助处理Servlet请求等
除此之外还包含一个很小,但实用的基于JSP的MVC框架。
使用Jodd的优点简化和统一 controller ,抛弃 extends SimpleFormController ,统一使用 implements Controller 的方式。
2. 简化 JSP 页面的 bind, 不需要一个字段一个字段的绑定。
3. 对 bean 没有任何要求,可以使用任意的 bean 做为 formBean.
1 把 jodd.jar 放到 web-inf->lib 下,在 web.xml 里声名标签:
< taglib >
< taglib-uri > jodd </ taglib-uri >
< taglib-location > /WEB-INF/lib/jodd.jar </ taglib-location >
</ taglib >
2 任意的一个 javaBean做为FormBean
package caike;
public class User {
private String userName;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String pwd) {
this .password = pwd;
}
public String getUserName() {
return userName;
}
public void setUserName(String username) {
this .userName = username;
}
}
3 在 JSP 页面使用 jodd tag:, 比如对应用户登录页面的
<% @page import = " caike.User " %>
<% @taglib uri = " jodd " prefix = " jodd " %>
< jodd:form beans ="user" scopes ="session" >
< form action ="my.htm" method ="post" >
< table width ="300" border ="0" cellspacing ="0" cellpadding ="0"
align ="center" class ="white" >
< tr >
< td height ="32" align ="right" width ="107" > 用户名: </ td >
< td height ="32" width ="193" >< input type ="text" name ="userName"
class ="input" size ="20" > </ td >
</ tr >
< tr >
< td height ="33" align ="right" width ="107" > 密码: </ td >
< td height ="33" width ="193" >< input type ="password" name ="password"
class ="input" size ="21" ></ td >
</ tr >
< tr >
< td height ="69" align ="center" colspan ="2" >
< input type ="submit" name ="Submit" value ="登录" >
</ tr >
</ table >
</ form >
</ jodd:form >
4 Dispatch-servelt.xml 中对 controller 的配置
<bean id="myController" class="caike.MyController">
</bean>
不再需要这种方式:
<!--
<bean id="myController" class="caike.MyFormController">
<property name="commandClass" value="caike" />
<property name="formView" value="userForm" />
</bean>
-->
5 在 controller 中取出 user
package caike;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jodd.bean.BeanUtil;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class MyController implements Controller {
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
User user = new User();
BeanUtil.load(user, request);
System.out.println( " 用户名: " + user.getUserName() + " 密码: " + user.getPassword());
return null ;
}
}
需要注意的地方:
表单中对应的名字 name 和 javaBean 里对应的属性名要相同。
<input type="text" name="userName"
class="input" size="20">
public class User {
private String userName;
.......
FIXED
[http]Fixed special case when content-length and chunked encoding exists.
NEW
[util] getResourceAsStream now has a boolean argument to disable the cache.
CHANGED
[util]Zip methods now returns resulting zip File .
FIXED
[methref]Fixed parallel access, added Pathrefs .
FIXED
[mail]Fixed parsing with MailAddress .
NEW
[mail]Added startTlsRequired and plaintextOverTLS() .
NEW
[mail]Added debug mode option and strict email address flag.
CHANGED
[bean] BeanCopy got some slight modifications and improvements.
CHANGED
[madvoc]Execution of inteceptors, filters and actions is significantly simplified.
1. 使用注意事项:Jodd 5.3.0 依赖 JDK 8+,请勿在旧版 JDK 上运行;核心模块(bean、http、json)可独立引入,避免全量依赖造成臃肿。
2. 常见问题:若遇 JSON 序列化循环引用,需在实体类上添加 @JsonIgnore 或配置深度限制;HTTP 请求超时默认 30 秒,可通过 setConnectionTimeout 调整。
3. 安装技巧:建议通过 Maven 引入,使用 jodd-all 聚合包时,请排除不需要的模块(如 jodd-db)以减少冲突;源码编译时需先安装父 POM 再打包子模块。
4. 特别提示:v5.3.0 已移除部分废弃 API(如 jodd.mail 旧版收发器),升级前请查阅迁移指南;若与 Spring 集成,注意 bean 扫描路径需包含 jodd 的注册器。
开发者其他应用

七猫免费阅读小说最新版41.6M234049人在玩七猫免费阅读小说下载安装app,七猫免费阅读小说app不一样的小说阅读神器,这里有着海量丰富小说应用资源,你想看的小说通过强大搜索引擎一键搜索即可,主要的是阅读小说还能够获取红包现金奖励哦。
下载
奇热漫画app安卓版25.5M13451人在玩奇热漫画是一款非常不错的漫画阅读软件,具有很多强大的阅读功能,奇热漫画app实时为你更新全网最新最热的动漫资源。平台拥有海量精彩漫画,官方正版漫画
下载
奇热小说app24.8M234499人在玩安卓奇热小说app是专为众多爱看小说的人士提供的手机看小说的软件,省流量极速免费看小说,海量热门小说任你看,喜欢小说的小伙伴不要错过,赶快下载奇热小说网手机版客户端体验吧
下载
2022快看漫画App最新版69.0M51448人在玩2022快看漫画,相信许多玩微博的小伙伴们都已经知道这款APP了。吵架归吵架,至于这款快看漫画App到底做得怎么样,只有试过才知道!
下载
豆瓣阅读客户端app70.2M9579人在玩豆瓣阅读app是一款为豆瓣的用户们量身定做的APP,在豆瓣阅读这里你可以看到更加符合豆瓣用户喜好的各类文字作品,而且目前书籍依然在持续增长中。
下载
追书神器官方版70.1M19679人在玩追书神器2022最新版是一款超级强力的小说导读助手,目前几大热门的小说连载网站均有关联,你可以通过它方便地寻找自己喜欢的书籍。
下载
腾讯动漫71.9M13609人在玩腾讯动漫寒假档,许多大人们认为动漫就是小孩子看的东西,但是大概从80后开始,动漫就成为了许多人生活中的一部分,如果你喜欢看动漫,可以来腾讯动漫吧,这里有最新动漫更新视频
下载
书旗小说免费版本32.7M22553人在玩书旗小说免费版下载安装,书旗小说免费版本是一款以书旗网海量小说为基础的在线/离线阅读器,集合在线阅读、本地阅读、书包下载、自动书签、智能搜索、阅读设置等多项人性化功能。
下载
搜狗阅读器app19.5M6809人在玩搜狗阅读是搜狗公司依托于搜狗搜索的丰富资源,为安卓用户打造的移动阅读应用产品。搜狗阅读海量图书即搜即看,新闻大事掌握在手,更有离线缓存、精品推荐、更新提醒等功能,让您随时随地享受阅读的快乐。
下载
起点读书app新版本202237.2M11875人在玩起点读书app新版本,又名起点看书,是起点中文网推出的一款阅读软件。它支持本地阅读并提供起点在线书库,具备多种格式的解析阅读功能
下载