我们都知道在EasyJWeb中,WebForm提供的快捷方法toPo可以把表单中的数据快速存入模型(域或
Command)对象中,里面还提供了非常有好的验证功能,具体请参考http://www.easyjf.com/bbs.ejf?
cmd=appShow&id=4423681
在近来的系统中我用到了JPA的组合,就是把一部分持久化字段定义到一个实体类中,但是toPo怎么才
会把表单的数据放到具体的组合类中呢?我遇到了这个问题,弄了我半天的时间啊,真是郁闷。
想不到EasyJWeb也提过一个辅助的标签啊。这是厉害啊!我把我的那部分代码贴出来看看。
@Embedded
@InnerProperty(overrides = {
@OverrideProperty(name = "amount", newName = "amount1"),
@OverrideProperty(name = "unit", newName = "unit1") })
@javax.persistence.AttributeOverrides( {
@AttributeOverride(name = "amount", column = @Column(name =
"amount1")),
@AttributeOverride(name = "unit", column = @Column(name = "unit1"))
})
@Basic(fetch = FetchType.LAZY)
private Price price1;// 产品市场价格
可以看到就用了一个@InnerProperty的标签就可以了啊!我们直接就可以在表单的页面上用
amount1,unit1来指定组合中的字段对应的数据就可以。但是我们访问该数据的时候直接用price1.unit就
可以了。