编程语言
首页 > 编程语言> > java – JPA实体没有主键?

java – JPA实体没有主键?

作者:互联网

我有一个实体类:

@Entity
@Table(name="CMC_MAP_SERVER_INFO")
@NamedQuery(name="CmcMapServerInfo.getMapServer", query="SELECT c FROM CmcMapServerInfo c")
public class CmcMapServerInfo implements Serializable {
    private static final long serialVersionUID = 1L;

    @Column(name="APPLICATION_NAME")
    private String applicationName;

    private String remarks;

    @Column(name="SERVER_IP")
    private String serverIp;

    @Column(name="SERVER_NAME")
    private String serverName;

    @Column(name="SERVER_PORT")
    private short serverPort;

    public CmcMapServerInfo() {
    }

我收到以下错误:

Entity class [class cdot.oss.cmsat.conf.ejb.entity.CmcMapServerInfo] has no primary key specified.

我在线阅读并发现实体必须定义主键.
但我这里的桌子只是一张桌子.它只是用来保存系统配置.

因此,我只想查询该行是否存在,然后获取该行并更新它.

我的列是serverIp,port,服务器的名称.

我该如何处理删除此错误?

解决方法:

JPA 2.0 Specification

>实体类必须使用实体注释进行注释.
>实体类必须具有无参数构造函数.
>实体类不能是最终的
>实体类必须实现Serializable接口.
>实体类必须具有唯一的不可变ID

否则,你不能.

标签:java,database,jpa,ejb-3-0,entity
来源: https://codeday.me/bug/20190927/1823876.html