`
SSailYang
  • 浏览: 312699 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于 JPA Annotation 的两点心得

    博客分类:
  • Java
阅读更多
第一,注释的继承
Class 的属性可以继承,但是注释就不可以了。写一个 Domain 基类,并在其中加入使用了 @Id 和 @GeneratedValue 注释的 id 属性。但在运行时,编译器报告子类缺少 identifier。如果在子类中加入 id 属性(这是需要在基类中去掉 id 属性),这时程序就会运行成功。我在 Spring 的 Samples 中也发现每个 Domain 类都有 id 属性。这样有点浪费代码,但又没有办法。

第二,注释的位置
注释可以加在属性上,也可以加在 getter 方法上,一般讲这样是可以的。但是还是将所有的注释都加在 getter 方法为好。在我的程序中,如果将 @OneToMany 注释加在属性上就会有异常。具体异常不说了,有兴趣大家可以试试。

环境:Spring 2.5,Hibernate 3.2.5,JPA

如果大家有不同意见,欢迎回复。
分享到:
评论
2 楼 littleJava 2009-11-16  
truesmile 写道
第一个问题,注释也是可以继承的。
你需要在父类上加注释@MappedSupperclass,那么继承这个父类的子类都可以用到父类的属性和注解

jdk中的@Inherited元素标注在这个个Annotation上之后,那么这个子类就是可以拥有父类这个Annotation了。
1 楼 truesmile 2009-05-15  
第一个问题,注释也是可以继承的。
你需要在父类上加注释@MappedSupperclass,那么继承这个父类的子类都可以用到父类的属性和注解

相关推荐

    JPA Annotation Reference

    JPA Annotation Reference

    jpa例子jpajpa

    2. **实体管理工厂(EntityManagerFactory)**: 这是创建和配置JPA的入口点,通过它我们可以获取到`EntityManager`实例。一般在应用启动时创建,然后在整个应用生命周期内复用。 3. **实体管理器(EntityManager)*...

    jpaannotationsprocessor:JPA Annotation Processor 基于“Better JPA、Better JAXB 和 Better Annotations Processing with Java SE 6”(http

    JPA Annotation Processor 基于“Better JPA、Better JAXB 和 Better Annotations Processing with Java SE 6” ================================================== ============================ JPA ORM 注释...

    JPA源文件/jpa学习

    2. **实体管理器(EntityManager)**:作为持久化的主要入口点,负责实体的创建、加载、更新和删除,以及执行查询操作。 3. **实体管理工厂(EntityManagerFactory)**:创建EntityManager实例,配置JPA的持久化单元...

    GSH:spring3.1.0M2+Hibernate3.5+GWT2.4+JPA+Annotation+Spring4gwt0.0.1亲手整合

    GSH:spring3.1.0M2+Hibernate3.5+GWT2.4+JPA+Annotation+Spring4gwt0.0.1亲手整合,也可以上新浪博客去看 http://blog.sina.com.cn/s/blog_687dfecb0100yrmf.html

    jpa1.0中文手册

    根据提供的信息,我们可以从标题、描述和部分内容中提取出关于JPA 1.0中文手册的知识点。 首先,标题中提到了“jpa1.0中文手册”,指出了文档所针对的技术是Java Persistence API(JPA)的1.0版本。JPA是一个Java...

    Hibernate annotation JPA 一对多,多对多

    JPA(Java Persistence API)是Java平台上的标准持久化框架,它定义了规范,而Hibernate是实现JPA的一个优秀供应商。在本主题中,我们将深入探讨使用Hibernate注解来实现JPA的一对多、多对多和多对一的关系映射。 1...

    Pro JPA2 精通JPA2

    《Pro JPA2:精通Java™ Persistence API》是一本由Mike Keith和Merrick Schincariol撰写的关于Java持久化API(JPA)的权威指南。本书深入探讨了JPA2,即Java Persistence API的第二版,是Java EE 6标准的一部分。...

    JPA教程,包括TOPLink JPA,Hibernate JPA,Open Jpa,jpa批注

    5. **查询(Query)**:JPA提供JPQL和Criteria API两种方式进行数据库查询,它们都是面向对象的查询语言。 通过学习和理解这些JPA实现及其批注,开发者可以有效地利用JPA来简化数据库操作,提高代码的可读性和可...

    关于SH JPA 简单的CRUD操作

    SH JPA,全称Spring Hibernate Java Persistence API,是Spring框架中的一个模块,它提供了一种在Java应用中管理和持久化对象的方式。JPA是Java EE规范的一部分,它简化了数据库操作,使得开发者可以专注于业务逻辑...

    关于jpa的一些视频资料

    关于jpa 的一些应用讲解,很适合新手学习

    SpringIOC_SpringMVC_SpringAnnotation_JPA

    标题 "SpringIOC_SpringMVC_SpringAnnotation_JPA" 涵盖了四个核心的Java开发框架技术,它们是Spring框架的重要组成部分。Spring框架是一个开源的应用框架,它为Java开发者提供了一个全面的基础设施,用于构建可扩展...

    JPA中文解释,JPA的API

    Java Persistence API(JPA)是Java平台上的一个标准,用于管理关系数据库中的对象持久化。它简化了在Java应用程序中存储、检索和管理数据的过程,是Enterprise JavaBeans(EJB)的一部分,也是Spring框架中的一个...

    JPA 标注 JPA标签手册

    Java Persistence API (JPA) 是Java企业版5(Java EE 5)的一部分,与Enterprise JavaBeans(EJB)3.0规范一起,极大地简化了Java持久化。它提供了一种对象关系映射方法,允许您以标准、可移植的方式声明性地定义...

    Gemini JPA 介绍资料

    Gemini JPA是在OSGi环境下(特别是Eclipse RCP)中使用的Java持久化框架。OSGi是一个模块化服务平台,允许在Java环境中动态地安装、启动、停止和卸载组件,而不会影响其他组件的正常运行。在Java开发中,持久化层...

Global site tag (gtag.js) - Google Analytics