java中的 索引 的定义_java – 如何在hibernate实体中通过几列定义索引?

早上.

我需要在hibernate实体中添加索引.据我所知,可以使用@Index注释来指定单独列的索引,但我需要一个实体的几个字段的索引.

我用谷歌搜索并找到了jboss注释@Table,它允许这样做(按照规范).但是(我不知道为什么)这个功能不起作用.可能是jboss版本低于必要,或者我可能不明白如何使用这个注释,但是…复杂索引没有创建.

为什么不能创建索引?

jboss版本4.2.3.GA

实体示例:

package somepackage;

import org.hibernate.annotations.Index;

import javax.persistence.Column;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.Id;

@Entity

@org.hibernate.annotations.Table(appliesTo = House.TABLE_NAME,indexes = {

@Index(name = "IDX_XDN_DFN",columnNames = {House.XDN,House.DFN}

)

}

)

public class House {

public final static String TABLE_NAME = "house";

public final static String XDN = "xdn";

public final static String DFN = "dfn";

@Id

@GeneratedValue

private long Id;

@Column(name = XDN)

private long xdn;

@Column(name = DFN)

private long dfn;

@Column

private String address;

public long getId() {

return Id;

}

public void setId(long id) {

this.Id = id;

}

public long getXdn() {

return xdn;

}

public void setXdn(long xdn) {

this.xdn = xdn;

}

public long getDfn() {

return dfn;

}

public void setDfn(long dfn) {

this.dfn = dfn;

}

public String getAddress() {

return address;

}

public void setAddress(String address) {

this.address = address;

}

}

当jboss / hibernate尝试创建表“house”时,它抛出以下异常:

Reason: org.hibernate.AnnotationException: @org.hibernate.annotations.Table references an unknown table: house

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值