item实体类,主要属性
@Id
@GeneratedValue
private int id;
@Column(nullable=true)
private String itemNo;
@Column(nullable=true)
private String itemName;
//物料规格
private String spec;
//物料型号
private String pattern;
@OneToOne
@JoinColumn
private ItemCategory category;
@OneToOne
@JoinColumn
private ItemUnit unit;
由于item,关联ItemCategory, ItemUnit两个类
因此在由jsp页面向action传递参数的时候,就有一些问题了,如果只是使用Modeldriven来处理,是不行的,
需要辅助处理,应该按照下面的实现。ModelDriven在向item赋值的时候,如果只是普通属性,那么就可以自行进行
类型转换,但是现在这里有自己定义的类型,就不行了。
public class ItemAction extends ActionSupport implements ModelDriven{
private Item item;
private String categoryId;
private String unitId;
private String[] selectFlag;
把jsp也面的name的值设置为categoryId;这样子的话ModelDriven就不会为item赋值了。
这样我们自己取得在设置里面,就可以更新和存储了。
也可以不使用ModelDriven,在jsp页面使用这样传值
<input type="" name="item.id">
<input type="" name="item.itemName">
<input type="" name="item.itemNo">
<input type="" name="item.spec">
<input type="" name="item.pattern">
<input type="" name="item.category.id">
<input type="" name="item.unit.id">
这样也很灵活