Primefaces数据表行键
我正在使用primefaces 3.5,在以下问题上需要帮助: 我有一个选择模式为single的datatable,所选项目是绑定到一个对象,而不是特定对象属性上的对象。示例代码如下:Primefaces数据表行键,primefaces,Primefaces,我正在使用primefaces 3.5,在以下问题上需要帮助: 我有一个选择模式为single的datatable,所选项目是绑定到一个对象,而不是特定对象属性上的对象。示例代码如下: <p:dataTable id="name" value="#{bean.items}" var="item" selectionMode="single" selection="#{bean.selected}" rowKey="#{item}"> <p:ajax event="rowSele
<p:dataTable id="name" value="#{bean.items}" var="item" selectionMode="single" selection="#{bean.selected}" rowKey="#{item}">
<p:ajax event="rowSelect" />
<p:ajax event="rowUnselect" />
...
</p:dataTable>
...
在项目创建期间,我不会立即将项目持久化到数据库中,而是维护一个项目列表,并在“保存处理程序”操作期间持久化整个列表
问题是,对于每个新创建的项,我都没有生成对象id(在持久化时在数据库上自动完成),并且在表上选择行的过程中,所选项总是错误的。我可以在没有唯一对象属性的情况下管理正确的行选择吗?这是逻辑上的问题,如果使用自动生成的关键点将方法更改为等于/hashcode,因为使用自动生成的关键点时必须具有候选关键点,因此对象上没有唯一的关键点是不可能的。我曾考虑使用对象哈希代码,但我必须更改所有实体。我将尝试使用随机生成器值,在持久化阶段之前,我将它设置为null,以便数据库处理它。这个解决方案是最佳实践吗?你有什么建议?阅读好的练习equals和hashcode