当前位置: 首页 > 面试题库 >

如何在hbm中做多列UniqueConstraint?

壤驷喜
2023-03-14
问题内容

处理一些传统的hibernate代码。

如何使用hbm.xml(hibernate映射文件)而不是注释执行以下操作?

@Table(name="users", uniqueConstraints = {
    @UniqueConstraint(columnNames={"username", "client"}),
    @UniqueConstraint(columnNames={"email", "client"})
})
public class User implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    private int id;
    private String username;
    private String email;
    private Client client;
}

问题答案:

使用properties标签:

...
<properties name="uk1" unique="true">
        <property name="username" .../>
        <many-to-one name="client" .../>
</properties>

<properties name="uk2" unique="true">
        <property name="email" .../>
        <many-to-one name="client" update="false" insert="false" .../>
</properties>
...

文档摘录:

元素允许定义类的属性的命名逻辑分组。构造最重要的用途是它允许属性的组合成为属性引用的目标。这也是定义多列唯一约束的便捷方法。

所有可用的选项在Hibernate文档中进行了描述。



 类似资料:
  • 问题内容: 我正在尝试为HTML网页构建滑块。它从struts动作从ArrayList(名为testList)获取值。我想以这种模式一次显示列表中的6个值。例如: 如果数组的大小为26,{0,1,2,3,4,5},则{6,7,8,9,10,11},然后是{11,12,13,14,15} ..和因此,直到{24,25},即使其为零也可以保留其他值。 每个循环都类似: 但是目前我以这种模式从列表中获取

  • 问题内容: 我正在尝试提供一种搜索功能,该功能将搜索多列以查找基于关键字的匹配项。该查询: 仅适用于搜索一列,我注意到用逗号分隔列名称会导致错误。那么可以在mysql中搜索多个列吗? 问题答案: 您可以使用AND或OR运算符,具体取决于要返回的搜索内容。 这两个子句必须匹配才能返回记录。或者: 如果任一子句匹配,则将返回记录。 有关使用MySQL SELECT查询可以执行的操作的更多信息,请尝试使

  • 我需要做一个文本框,自动完成用户正在键入的内容。我想要的东西像一个JComboBox,可以更新每当用户键入一个新字符的基础上,一组可能性。我想通过扩展JPanel或JComponent创建自己的自定义组件来实现这一点。我不确定的是如何创建一个框架,它可以漂浮在所有其他内容上。比如,当您点击JComboBox的下拉框时,我如何将一个浮动在背景上方和文本框下方的可能性列表放置在其中?

  • 我有: 我想要: 似乎在scala中我可以写:< code>df.select($"value。_1 ",$ "值。_2 ",$ "值。_3"),但这在python中是不可能的。 那么有没有好的办法呢?

  • 我想知道在PostgreSQL中是否有计算多列之和的方法。 我有一个超过80列的表,我必须编写一个查询,添加每个列的每个值。 我尝试使用SUM(col1、col2、col3等),但它不起作用。