download url:http://jodd.org/download/index.html
Jodd 3.3发布了,该版本新增了一个Lagarto HTML解析器和Decora页面修饰器以及Jerry和一些小的改进
Jodd是一个普通开源Java包。你可以把Jodd想象成Java的“瑞士军刀”,不仅小,锋利而且包含许多便利的功能。
Jodd提供的功能有:
1. 提供操作Java bean
2. 可以从各种数据源加载Bean
3. 简化JDBC的接连与代码
4. 剖析SQL查询
5. 处理时间与日期
6. 操作与格式化String
7. 搜索本地硬盘上的文件
8. 帮助处理Servlet请求等
除此之外还包含一个很小,但实用的基于JSP的MVC框架。
简化和统一
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;
.......