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

本文介绍了一个使用WebWork框架处理复杂表单数据的例子,通过User类及其关联的Computer类实现表单字段的嵌套,展示了如何从前端收集数据并映射到Java对象上。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

 

package ch2.example1;

public class User {
  
private String name;
  
private Computer pc;
public String getName() {
    
return name;
}

public void setName(String name) {
    
this.name = name;
}

public Computer getPc() {
    
return pc;
}

public void setPc(Computer pc) {
    
this.pc = pc;
}

}



package ch2.example1;

public class Computer {
   
private String cpu;
   
private String ram;
public String getCpu() {
    
return cpu;
}

public void setCpu(String cpu) {
    
this.cpu = cpu;
}

public String getRam() {
    
return ram;
}

public void setRam(String ram) {
    
this.ram = ram;
}

}

 
jsp表单页面:

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

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

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


   
</ww:form>


action:

 

package ch2.example1;

import java.util.Map;

import com.opensymphony.xwork.Action;
import com.opensymphony.xwork.ActionContext;
import com.opensymphony.xwork.ActionSupport;

public class ShowUser extends ActionSupport implements Action{
    
private User user;
    
public User getUser() {
        
return user;
    }

    
public void setUser(User user) {
        
this.user = user;
    }

    
public String execute() throws Exception {
        System.out.println(user.getName());
        System.out.println(user.getPc().getCpu());
        System.out.println(user.getPc().getRam());
        
return NONE;
    }


    
    
    
    
   
}


运行结果:
1
2
3

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值