Jodd(Java開發工具集)專門針對現今流行和進入的微服務、微框架時代,而由個人大神自制分享的常用開源工具包,僅在java環境下加載使用,體積小、內容還不少,無論是訊息的即時傳發,還是代碼的自檢自查,功能里面都是包含的!

jodd官方簡介

Jodd 是一個開源的 Java 工具集, 包含一些實用的工具類和小型框架。簡單,卻很強大!

Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + HTML < 1.7 Mb

Jodd 被分成眾多模塊,按需選擇,其中

jodd jar下載

工具類模塊有:

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? ? ? ? 一個基于注解的字段驗證框架

Jodd提供的功能有:

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-location > /WEB-INF/lib/jodd.jar

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 height ="32" width ="193" >< input type ="text" name ="userName"

class ="input" size ="20" >

< tr >

< td height ="33" align ="right" width ="107" > 密碼:

< td height ="33" width ="193" >< input type ="password" name ="password"

class ="input" size ="21" >

< tr >

< td height ="69" align ="center" colspan ="2" >

< input type ="submit" name ="Submit" value ="登錄" >

4 Dispatch-servelt.xml 中對 controller 的配置

不再需要這種方式:

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 里對應的屬性名要相同。

class="input" size="20">

public class User {

private String userName;

.......

改進記錄包括:

固定

[http]修復了存在內容長度和分塊編碼的特殊情況。

[util] getResourceAsStream現在具有一個布爾參數來禁用緩存。

已變更

[util] Zip方法現在返回生成的zip File。

固定

[methref]修復了并行訪問,添加了Pathrefs。

固定

[mail]已使用MailAddress進行了解析。

[mail]添加了startTlsRequired和plaintextOverTLS()。

[mail]添加了調試模式選項和嚴格的電子郵件地址標志。

已變更

[bean] BeanCopy進行了一些細微的修改和改進。

已變更

[madvoc]攔截器,過濾器和操作的執行已大大簡化。

Jodd(Java開發工具集)v5.3.0 開源版下載地址

遠程下載