`
bulebaby
  • 浏览: 42828 次
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

解决:org.hibernate.annotationexception no identifier specified for entity

阅读更多
org.hibernate.annotationexception no identifier specified for entity

因为数据库的表必须要定义主键,此类没有定义主键

复合主键:
表 1-17 @IdClass 属性

属性 必需 说明
value


要指定复合主键类,请将 value 设置为所需的 Class(请参阅 @AttributeOverride)。



示例 1-37 显示了一个非嵌入的复合主键类。在该类中,字段 empName 和 birthDay 的名称和类型必须对应于实体类中属性的名称和类型。示例 1-38 显示了如何使用这个非嵌入的复合主键类(使用 @IdClass 批注)配置 EJB 3.0 实体。由于实体类字段 empName 和 birthDay 在主键中使用,因此还必须使用 @Id 批注对其进行批注。

示例 1-37 非嵌入的复合主键类

public class EmployeePK implements Serializable
{
private String empName;
private Date birthDay;

public EmployeePK()
    {
    }

public String getName()
    {
return empName;
    }

public void setName(String name)
    {
empName = name;
    }

public long getDateOfBirth()
    {
return birthDay;
    }

public void setDateOfBirth(Date date)
    {
birthDay = date;
    }

public int hashCode()
    {
return (int) empName.hashCode();
    }

public boolean equals(Object obj)
    {
if (obj == this) return true;
if (!(obj instanceof EmployeePK)) return false;
if (obj == null) return false;
EmployeePK pk = (EmployeePK) obj;
return pk.birthDay == birthDay && pk.empName.equals(empName);
    }
}

示例 1-38 @IdClass

@IdClass(EmployeePK.class)
@Entity
public class Employee
{
@Id String empName;
@Id Date birthDay;
...
}
分享到:
评论

相关推荐

    hibernate错误解决方案

    ### Hibernate 错误解决方案 #### 一、概述 在使用Hibernate框架进行开发的过程中,经常会遇到各种各样的异常问题。这些问题可能会导致程序无法正常运行,甚至影响到系统的稳定性。本文将针对几个常见的Hibernate...

    org.restlet-2.3.0.jar 最新版本

    《深入理解org.restlet-2.3.0.jar:Java RESTful开发的得力助手》 在Java开发领域,REST(Representational State Transfer)架构风格已经成为构建Web服务的主流选择,而org.restlet-2.3.0.jar则是实现RESTful API...

    hibernate.properties

    # Hibernate, Relational Persistence for Idiomatic Java # # License: GNU Lesser General Public License (LGPL), version 2.1 or later. # See the lgpl.txt file in the root directory or <http://...

    hibernate常见错误解决方案

    ### Hibernate常见错误解决方案 在开发基于Hibernate框架的应用程序时,我们经常会遇到各种各样的异常情况。这些异常不仅会影响系统的正常运行,还可能增加调试难度。本文将针对几个常见的Hibernate异常进行详细...

    Hibernate 参数配置详解

    ### Hibernate 参数配置详解 #### 一、概述 Hibernate 是一款流行的 Java 持久层框架,它通过提供一套丰富的 API 和配置选项来简化数据库访问。本文档将深入探讨 Hibernate 的核心配置参数及其功能,帮助开发者更...

    hibernate配置参数大全

    hibernate.transaction.manager_lookup_class=org.hibernate.transaction.JBossTransactionManagerLookup ``` #### 三、方言配置(Dialect) 方言配置是Hibernate与不同类型的数据库进行交互的基础,它决定了...

    Manning.Java.Persistence.with.Hibernate.Nov.2006

    1. **Hibernate核心概念**:包括实体(Entity)、标识符(Identifier)、持久化类、对象状态(Transient、Persistent、Detached)、Session、Transaction等。 2. **配置与环境设置**:讲解如何在项目中引入...

    error-information.zip_site:www.pudn.com

    这些错误信息是开发者与编译器之间的沟通桥梁,帮助我们理解和解决代码中的问题。本文将深入解析"error-information.zip"中提供的"error information.doc"文档,它汇集了最常见的20种VC编译错误信息,旨在帮助开发者...

    解决error C2065: '_beginthreadex' :undeclared identifier

    ### 解决Error C2065:'_beginthreadex':Undeclared Identifier #### 错误概述 在编译过程中遇到“Error C2065:'_beginthreadex':undeclared identifier”这一错误信息时,通常意味着编译器无法识别`_...

    常用OID介绍说明

    OID,即Object Identifier,是网络管理中的一个关键概念,它是一种独特的数字序列,用于唯一地标识SNMP(简单网络管理协议)中的管理对象,如网络设备、服务或接口等。在IT领域,OID用于监控和管理系统性能,收集...

    hibernate配置属性参数[定义].pdf

    例如,如果使用 MySQL 数据库,可以设置为 `org.hibernate.dialect.MySQL5Dialect`。 2. `hibernate.show_sql`:当设置为 `true` 时,Hibernate 会在控制台上输出执行的 SQL 语句,这对于调试和理解底层数据库操作...

    hibernate常见异常

    包括 net.sf.hibernate.MappingException、net.sf.hibernate.PropertyNotFoundException、org.hibernate.id.IdentifierGenerationException 以及 a different object with the same identifier value was already ...

    Hibernate 参数设置一览表.doc

    11. **hibernate.use_identifier_rollback**:如果设置为`true`,在删除对象后,Hibernate会将标识属性重置为默认值,这有助于管理对象的状态。 12. **hibernate.use_sql_comments**:启用后,Hibernate会在SQL语句...

    hibernate 3.3 core API 英文版

    7. **Entity和Identifier**:在Hibernate中,Entity代表数据库中的表,而Identifier则是实体的主键。每个实体都必须有一个标识符属性,通过@Id注解标记。 8. **持久化状态和生命周期**:Hibernate将对象分为瞬时态...

    Hibernate可选配置大全

    - **取值**:`org.hibernate.dialect.Dialect`的子类,如`org.hibernate.dialect.MySQLDialect`。 - **用途**:确保SQL语句的正确性和高效性,通常Hibernate能根据JDBC元数据自动识别。 ##### 2. hibernate.show_...

    外网无法访问HDFS org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block

    报错 org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block 2、百度结果 参考 https://blog.csdn.net/xiaozhaoshigedasb/article/details/88999595  防火墙记得关掉; 查看DataNode是否启动;...

    hibernate 配置属性参数详情(全)

    例如,如果你使用的是MySQL,你可以设置为`org.hibernate.dialect.MySQL5Dialect`。 2. **hibernate.show_sql**:如果设置为`true`,Hibernate将在控制台上打印出执行的所有SQL语句,这对于调试非常有用。 3. **...

    hibernate参数配置

    例如,如果你使用的是MySQL,可以设置为`org.hibernate.dialect.MySQL5Dialect`。 2. **hibernate.show_sql**: 开启此参数,Hibernate将在控制台输出执行的所有SQL语句,便于调试和查看数据库交互情况。值可以是`...

    Uniapp在IOS系统打包测试流程

    - 蒲公英网站(https://www.pgyer.com/)提供了一个便捷的方式获取iOS设备的UDID(Unique Device Identifier),这是识别每个iOS设备的唯一标识。 - 对于iOS 15及更高版本,获取UDID的方法是通过安装描述文件,...

    Three.js是一个在计算机图形学领域的WebGL封装库,它提供场景、灯光和材质处理功能,并支持动画和交互,用于在网页上创建和

    跨浏览器兼容性:Three.js 能够在多种网页浏览器上运行,并且不需要特定插件的支持,因为它使用了WebGL技术。基于WebGL:Three.js实际上是使用WebGL来绘制三维效果的。WebGL是一个底层的JavaScript API,用于在不...

Global site tag (gtag.js) - Google Analytics