天天看点

使用webwork处理表单字段中的继承关系

先有一个类user,其中有一个name字段,一个computer对象,computer对象中有cpu和ram两个字段,如下:

使用webwork处理表单字段中的继承关系

package  ch2.example1;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public   class  User  ... {

使用webwork处理表单字段中的继承关系

  private String name;

使用webwork处理表单字段中的继承关系

  private Computer pc;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public String getName() ...{

使用webwork处理表单字段中的继承关系

    return name;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public void setName(String name) ...{

使用webwork处理表单字段中的继承关系

    this.name = name;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public Computer getPc() ...{

使用webwork处理表单字段中的继承关系

    return pc;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public void setPc(Computer pc) ...{

使用webwork处理表单字段中的继承关系

    this.pc = pc;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

package  ch2.example1;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public   class  Computer  ... {

使用webwork处理表单字段中的继承关系

   private String cpu;

使用webwork处理表单字段中的继承关系

   private String ram;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public String getCpu() ...{

使用webwork处理表单字段中的继承关系

    return cpu;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public void setCpu(String cpu) ...{

使用webwork处理表单字段中的继承关系

    this.cpu = cpu;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public String getRam() ...{

使用webwork处理表单字段中的继承关系

    return ram;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public void setRam(String ram) ...{

使用webwork处理表单字段中的继承关系

    this.ram = ram;

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系

jsp表单页面:

使用webwork处理表单字段中的继承关系

< ww:form  action ="showuser.dhtml" >

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

        < ww:textfield  label ="请输入名称:"  name ="user.name" />< br >

使用webwork处理表单字段中的继承关系

        < ww:textfield  label ="请输入pcu:"  name ="user.pc.cpu" />< br >

使用webwork处理表单字段中的继承关系

        < ww:textfield  label ="请输如ram:"  name ="user.pc.ram" />< br >

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

        < input  name ="submit"  type ="submit"  value ="submit" />

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

    </ ww:form >

action:

使用webwork处理表单字段中的继承关系

package  ch2.example1;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

import  java.util.Map;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

import  com.opensymphony.xwork.Action;

使用webwork处理表单字段中的继承关系

import  com.opensymphony.xwork.ActionContext;

使用webwork处理表单字段中的继承关系

import  com.opensymphony.xwork.ActionSupport;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

public   class  ShowUser  extends  ActionSupport  implements  Action ... {

使用webwork处理表单字段中的继承关系

    private User user;

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

    public User getUser() ...{

使用webwork处理表单字段中的继承关系

        return user;

使用webwork处理表单字段中的继承关系

    }

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

    public void setUser(User user) ...{

使用webwork处理表单字段中的继承关系

        this.user = user;

使用webwork处理表单字段中的继承关系

    }

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

    public String execute() throws Exception ...{

使用webwork处理表单字段中的继承关系

        System.out.println(user.getName());

使用webwork处理表单字段中的继承关系

        System.out.println(user.getPc().getCpu());

使用webwork处理表单字段中的继承关系

        System.out.println(user.getPc().getRam());

使用webwork处理表单字段中的继承关系

        return NONE;

使用webwork处理表单字段中的继承关系

    }

使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系
使用webwork处理表单字段中的继承关系

}

使用webwork处理表单字段中的继承关系

运行结果:

1

2

3

可以看到,使用webwork可以很容易在表单中处理类的继承关系,这是非常方便的一格特性

继续阅读