JPA规范说明

Entities may extend non-entity classes as well as entity classes, and non-entity classes may extend entity classes.

@ javax.persistence.MappedSuperclass注释允许您定义此类映射

@MappedSuperclass

public class MyThing implements Serializable {

private int myNumber;

private String myData;

// getter's and setter's

}

@Entity

@Table(name="MY_THING")

public class MyThingEntity extends MyThing {

}

如JPA规范所述

The MappedSuperclass annotation designates a class whose mapping information is applied to the entities that inherit from it.

A class designated with the MappedSuperclass annotation can be mapped in the same way as an entity except that the mappings will apply only to its subclasses since no table exists for the mapped superclass itself.

如果你需要覆盖由MyThing定义的一些属性,使用@AttributeOverride(当你想覆盖单个属性)或@AttributeOverrides(当你想覆盖多个属性)

@Entity

@Table(name="MY_THING")

@AttributeOverride(name="myData", column=@Column(name="MY_DATA"))

public class MyThingEntity extends MyThing {

}

@Entity

@Table(name="MY_OTHER_THING")

@AttributeOverrides({

@AttributeOverride(name="myData1", column=@Column(name="MY_DATA_1")),

@AttributeOverride(name="myData2", column=@Column(name="MY_DATA_2"))

})

public class MyOtherThingEntity extends MyThing {

}

如果不想更改基类,可以使用xml将其定义为@MappedSuperClass

注意:默认情况下,持久性提供程序将在META-INF目录中查找名为orm.xml的文件

没有其他的。如果要覆盖属性,请使用@AttributeOverride,如上所示

Java可扩展实体_java – 是否可以通过扩展一个POJO来构建一个JPA实体?相关推荐

  1. 以java为扩展名_Java源程序文件的扩展名为.java。

    Java源程序文件的扩展名为.java. 答:√ Many mothers today feel _(conflict)_ ?about working outside the home. 答:对 ( ...

  2. java中bean对象_JAVA中PO,BO,VO,DTO,POJO,Entity,JavaBean,JavaBeans各个对象的区别,以及lombo、jpa简介及用法...

    常见JAVA类概念介绍 PO:持久对象 (persistent object). 是ORM(Objevt Relational Mapping)框架中Entity,PO属性和数据库中表的字段形成一一对 ...

  3. java 文件去除扩展名_Java操作——获取文件扩展名,去掉文件扩展名

    昨天收邮件,得知要参加一个产品部的会议,猜想,也许是因为我做的这个产品demo问题.于是昨天忙活到凌晨3点半,结果早上一来才知道又被调戏了.发邮件的MM把邮件误发给我了.悲催啊有木有,困啊有木有!自己 ...

  4. ant java 外部jar包_java – 在使用Ant的新jar文件构建中包括外部jar文件

    我只是"继承"一个Java项目,而不是来自Java背景,我有时失去一点. Eclipse用于在开发期间调试和运行应用程序.我已经通过Eclipse成功创建了一个.jar文件,'包括 ...

  5. java数组转对象_java将对象数组列表转换为POJO

    小编典典 我很快尝试了这个: public class Main { public static void main(String[] args) { Object[] obj = new Objec ...

  6. java file的用法_Java 关于File使用

    1. File类 1.1. File类说明 存储在变量,数组和对象中的数据是暂时的,当程序终止时他们就会丢失.为了能够永 久的保存程序中创建的数据,需要将他们存储到硬盘或光盘的文件中.这些文件可以移动 ...

  7. jpa 定义中间表实体_Spring Data JPA实体详解

    1. Spring Data JPA实体概述 JPA提供了一种简单高效的方式来管理Java对象(POJO)到关系数据库的映射,此类Java对象称为JPA实体或简称实体.实体通常与底层数据库中的单个关系 ...

  8. java动态扩展_java栈内存动态扩展要怎么理解?要如何实现?

    小伙伴们知道如何在java栈中内存动态扩展吗?这是虚拟机中的一个概念,下面让我们一起来看看该如何实现吧. 一.内存概念 在java中,我们一般会简单把java内存区域划为两种:堆内存与栈内存.其实这种 ...

  9. java memcached 存储对象_java – 从Memcache中获取低级别数据存储区实体对象时的慢速反序列化...

    事实证明,检索存储内存缓存的低级数据存储实体非常缓慢.由于objectify将实体缓存为低级数据存储区实体类型,因此当使用objectify从memcache中获取许多实体时,这会导致性能不佳. 真正 ...

最新文章

  1. 递归神经网络——就是解决AST这样的问题
  2. TypeScript泛型
  3. 定义一个dto对象_java里面Dto对象跟VO的区别
  4. linux监控采集项
  5. 解决Fedora中root无法登录问题
  6. 电脑文件分区壁纸--超级马里奥、樱桃小丸子主题
  7. Axure share如何自适应手机屏幕
  8. LoRa网关实现水表抄表无线远程数采方案
  9. 实战篇:Oracle分区表之在线重定义
  10. 电脑一启动吃鸡就重启计算机,玩吃鸡老是重启电脑
  11. 网站banner写法
  12. nginx配置选项try_files详解
  13. NOIP2012 提高组 Day 2
  14. hadoop集群-单词统计
  15. Java图形化界面---
  16. 从程序员到项目经理(5):程序员加油站 -- 不是人人都懂的学习要点--------转自西西吹雪...
  17. 岁月是把杀猪刀,程序员刚实习VS几年后,从小鲜肉到老司机...
  18. 如何基于任务的价值确定其优先级
  19. 计算机二级WPS 选择题(模拟和解析三)
  20. 串口和鼠标冲突,导致鼠标异常问题

热门文章

  1. Google邮局可以实时开通了
  2. 【实战】MATLAB+神经网络+MNIST
  3. 【收藏】linux下用命令方式创建及管理kvm虚拟机
  4. Docker构建Spark镜像手动执行命令示例
  5. Python3需要安装的MySQL库是mysqlclient
  6. Linux vim光标快速移动指定行数G
  7. MySQL设置表的字符编码为utf-8
  8. 【软考-系统架构师】计算机操作系统相关考题答案详解
  9. 国际计算机杂志排名2015,中国计算机学会推荐国际学术刊物与期刊(新增列表)2015-12-22-06_48_31...
  10. oracle join详解,inner join和left join之间的区别详解