posts - 22, comments - 17, trackbacks - 0, articles - 15
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

使用Jodd的优点

Posted on 2006-12-02 15:48 码农cz 阅读(2049) 评论(0)  编辑  收藏 所属分类: Spring Around
简化和统一 controller ,抛弃 extends SimpleFormController ,统一使用 implements Controller 的方式。

2.  简化 JSP 页面的 bind, 不需要一个字段一个字段的绑定。

3.  bean 没有任何要求,可以使用任意的 bean 做为 formBean.

 

使用方法简介:

jodd.jar 放到 web-inf->lib 下,在 web.xml 里声名标签:

< taglib >

       
< taglib-uri > jodd </ taglib-uri >

       
< taglib-location > /WEB-INF/lib/jodd.jar </ taglib-location >

    
</ taglib >

 

任意的一个 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;

       }
 

}

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 >

 

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>

    -->

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;
       .......


只有注册用户登录后才能发表评论。


网站导航: