为什么JPA实体类有一个实体名加下划线的类

2024-01-01

我是 JPA 新手,我创建了一个如下所示的类

/**
 * 
 */
package programme;

import javax.persistence.Access;
import javax.persistence.AccessType;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

/**
 * @author anoop
 *
 */
@Entity
@Table(name="course")
@Access(AccessType.FIELD)
public class programme {
    @Id private int id;
    private String name;
    private int year;
    @Transient private String comments;

    //getters and setters for the fields.
}

我注意到还有另一个类的名称是我的实体 java 类 Programme.java,带有下划线,即 Programme_.java。这个类是什么以及为什么生成这个类。有什么办法可以阻止它的产生吗?

Programme_.java 类的代码如下。

package programme;

import javax.annotation.Generated;
import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel;

@Generated(value="Dali", date="2014-04-27T21:32:59.433+0530")
@StaticMetamodel(programme.class)
public class programme_ {
    public static volatile SingularAttribute<programme, Integer> id;
    public static volatile SingularAttribute<programme, String> name;
    public static volatile SingularAttribute<programme, Integer> year;
    public static volatile SingularAttribute<programme, String> comments;
}

这是您的“规范元模型”。它可以与 JPA Criteria API 一起使用,如 JPA 2.x 规范(第 6.2 节)所述。

要阻止 Eclipse 生成这些类:编辑 Eclipse 项目属性 > JPA > Canonical 元模型 (JPA 2.0) > 源文件夹 - 将文件夹的值设置为“”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么JPA实体类有一个实体名加下划线的类 的相关文章

随机推荐