首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何为Spring JPA中的不同实体设置用户帐户?

如何为Spring JPA中的不同实体设置用户帐户?
EN

Stack Overflow用户
提问于 2019-05-29 00:48:09
回答 2查看 867关注 0票数 0

我正在制作一个系统(使用Spring + JPA和MySQL)来显示某个职位的最佳申请者。companyapplicants有自己的user account,有了它,它们就可以填写它们的personal/company informationjob profile/job offer conditions了。这样,系统就应该将工作条件(如3+多年的C语言工作经验)与申请者的工作概况相匹配。

我的问题是,用户帐户是首先创建的,应该是独立的,但这两个具有不同属性的不同实体(申请人和公司)正在使用它。因此,如果我在用户帐户中创建一个applicantcompany,其中一个将始终为空。

我该如何解决这个问题呢?我猜问题应该是这样的:如何实现一个用户帐户,该帐户可以保存来自具有不同属性的不同实体的数据(因此,不能分组)?(实际上,我还需要一个实体,但我尝试将其简化,以便更清楚地说明问题)。

EN

回答 2

Stack Overflow用户

发布于 2019-05-29 08:46:27

我认为,你应该制作标记界面,就像public interface UserAccountable或smth。在您的ApplicantCompany类中实现此接口。然后,您可以在UserAccount类中创建一个字段,如private UserAccountable someUser;,并通过setter和getter将此变量赋值给Applicant或Company。希望这能有所帮助!

票数 0
EN

Stack Overflow用户

发布于 2019-05-30 06:13:29

我在这里找到了我需要的东西:https://thoughts-on-java.org/complete-guide-inheritance-strategies-jpa-hibernate/

问题在于映射,而不是类设计本身。我可以在Java世界中创建接口和抽象类来解决这个问题,但在SQL世界中这是不可能的,所以映射是关键。在本例中,我在寻找连接表映射,但我意识到我需要它只是为了在我的UserAccount中不包含空字段,因为我不需要多态查询(例如,给我每个“用户类型”(PersonCompany)的名称),而且以这种方式实现它在性能方面代价太高,所以我将牺牲空间来换取性能,并且我将在User Account中引用所有三个用户类型,这将使这三个字段中的两个永远为空。

PS:单表映射不会有帮助,因为我确实需要使用not null条件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56351712

复制
相关文章
JPA实体类中的注解
@Entity   标注于实体类上,通常和@Table是结合使用的,代表是该类是实体类 @Table   标注于实体类上,表示该类映射到数据库中的表,没有指定名称的话就表示与数据库中表名为该类的简单类名的表名相对应,如果是逆向生成表的话就会以简单类名作为表名   如果指定名称,例如@Table(name="tb_user"),就表示映射到数据库中的tb_userz这个表; @Id   标注于属性上,通常是在get方法上,也可以在属性的声明上。   用于表示该属性作为ID主键 @GeneratedValue
二十三年蝉
2018/03/29
3.9K0
Windows 2008设置域用户帐户密码策略
1. 如图3-22所示,在DCServer上,点击“开始”à“程序”à“管理工具”à“组策略管理”。
黄啊码
2020/05/29
2K0
Spring Data JPA系列5:让IDEA自动帮你写JPA实体定义代码
通过前面的系列文档,我们一起对SpringData JPA从浅入深的进行了全方位的探讨。正所谓“工欲善其事、必先利其器”,面对一个优秀的框架,如果再结合一些外部的工具,其实可以让我们的开发效率与程序员开发过程的体验更上一层楼的。
是Vzn呀
2022/07/14
1.7K0
Spring Data JPA系列5:让IDEA自动帮你写JPA实体定义代码
Spring Boot JPA 中transaction的使用
transaction是我们在做数据库操作的时候不能回避的一个话题,通过transaction,我们可以保证数据库操作的原子性,一致性,隔离性和持久性。
程序那些事
2020/07/08
2.2K0
如何删除MySQL用户帐户
MySQL允许您创建多个用户帐户并授予适当的权限,以便用户可以连接和管理数据库。如果不再需要用户帐户,则最好删除用户权限或完全删除用户帐户。
星哥玩云
2022/08/18
3.2K0
如何删除MySQL用户帐户
win10如何为双显示屏设置不同的壁纸
网上流传最广的鸡肋方法是,同时选中多张图片,右键设置成壁纸。这种方法是让这多种图片以幻灯片轮播的方式在多个显示屏上随机播放,并没有实现真正的两个显示屏设置两个固定的壁纸。 正解: 1.win+R 打开
kalifa_lau
2018/04/28
2.5K0
win10如何为双显示屏设置不同的壁纸
Spring Boot JPA中关联表的使用
本文中,我们会将会通过一个Book和Category的关联关系,来讲解如何在JPA中使用。
程序那些事
2020/07/08
2.1K0
Spring·JPA
JPA 即 Java 持久化 API(Java Persistence API),是一个用于映射 Java 对象和关系型数据库表的规范。此规范使得开发者可以不依赖特定数据库,也能很好地 CRUD(创建、读取、更新、删除)。
数媒派
2022/12/01
3.4K0
关闭"用户帐户控制"提示
将方块移动到 从不通知,点击 确定,弹出提示是否允许更改,点击 是;再次打开软件就不会弹出 "用户帐户控制" 对话框了。
似水的流年
2021/04/07
1.6K0
关闭"用户帐户控制"提示
Spring Boot JPA中java 8 的应用
上篇文章中我们讲到了如何在Spring Boot中使用JPA。本文我们将会讲解如何在Spring Boot JPA中使用java 8 中的新特习惯如:Optional, Stream API 和 CompletableFuture的使用。
程序那些事
2020/07/08
1.2K0
Spring Boot不同版本Redis设置JedisConnectionFactory
最近重构项目想引入Redis,之前1.0版本看项目里用的本地缓存Guava,这次重构后考虑要不要加入Redis。打算试试~
Li_XiaoJin
2022/06/10
2.5K0
Spring Data JPA(一):@id @generatedvalue设置初始值
本篇文章引导你通过Spring Boot,Spring Data JPA和MySQL实现设置@id @generatedvalue初始值从10000自增。
java干货
2021/02/19
2.1K0
Spring Data JPA(一):@id @generatedvalue设置初始值
Spring整合Hibernate、Hibernate JPA、Spring Data JPA、Spring Data Redis
环境说明,使用Jdk1.8版本,spring4.2.0.RELEASE版本、hibernate5.0.7.Final版本,spring-data-jpa-1.9.0.RELEASE版本、spring-data-redis-1.6.0.RELEASE版本。
别先生
2020/05/27
5.6K0
关于Java持久化相关的资源汇集:Java Persistence API
先来个BEA的网上技术交流会(Webinar):EJB3 Java Persistence API:好的、坏的和一般功能,附件是PPT资料。
阿敏总司令
2019/02/28
2.5K0
使用Spring Boot 2.X构建RESTful服务
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的创建、运行、调试、部署等。它大大减少了基于Spring开发的生产级应用程序的工作量。因此,开发人员能够真正专注于以业务为中心的功能。
java干货
2021/02/19
1.4K0
使用Spring Boot 2.X构建RESTful服务
快速学习-Spring Data JPA中的多表查询
对象图导航检索方式是根据已经加载的对象,导航到他的关联对象。它利用类与类之间的关系来检索对象。例如:我们通过ID查询方式查出一个客户,可以调用Customer类中的getLinkMans()方法来获取该客户的所有联系人。对象导航查询的使用要求是:两个对象之间必须存在关联关系。
cwl_java
2020/04/01
2.4K0
快速学习-Spring Data JPA中的多表查询
Spring Data JPA
Spring boot 底层默认进行数据访问采用的技术。 Spring官方开发用来简化数据访问的一个项目,如Spring Data JPA简化关系型数据 库的操作,MongoDB,Redis,Solr,Cassandra,haoop等等。
cherishspring
2019/11/05
1.1K0
JPA设置MySQL编码
可以在application.yml添加配置项: spring: datasource: driver-class-name: com.mysql.jdbc.Driver # 使用
IT晴天
2018/08/20
3.2K0
Spring JPA 拓展
本节记录了一组Spring数据扩展,它们支持在各种上下文中使用Spring数据。目前,大部分集成都是针对Spring MVC的。
Kindear
2020/09/10
1.3K0
Spring JPA 拓展
点击加载更多

相似问题

设置JPA实体的问题(Spring )

10

在JPA中设置不同实体的字段

10

Spring JPA -具有相同id的不同实体

110

Spring data jpa标准,如

10

删除Spring JPA中的实体

111
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文