声明未映射到列的hibernate POJO布尔属性

时间:2013-10-18 03:59:24

标签: java hibernate struts2

在候选POJO中,我有布尔属性“isNewCandidate”

那么在POJO中为变量声明的最佳方法是什么,以便struts可以访问它。

<s:property value="candidate.isNewCandidate"/>

所以我将该物业公之于众,我能够访问它。但是我应该公开这个属性还是有一个最好的方法,我可以拥有属性私有,并拥有像普通数据库列映射属性一样的getter和setter?

1 个答案:

答案 0 :(得分:1)

必须公开属性才能使用Struts或UI来访问它。所以另一个答案是错误的。

如果可以从Candidate对象中找出它(例如,如果ID不为零),则可以将其设置为只读属性。

但是,最好在控制器中找出它。只需在视图中设置它(即将其设置为请求属性),而不是将其添加到bean中。 JSP可以阅读&amp;从请求属性渲染。

根本没有它在bean中,可能是更好的封装方式......而“new”vs“existing”是在Edit Forms&amp; amp;页面,并且实际上是编辑表单中生命周期的属性,而不是特定的bean类型。在创建/编辑页面之外,它并不重要。

长话短说:在“基础EditForm控制器”中实现一次,而不是在每个实体类中单独实现。