JPA jar包依赖中实体类命名冲突带来的 隐藏问题

本文探讨了在引入依赖时,不同Jar包中实体类命名冲突的问题,特别是JPARepository命名冲突导致的启动失败,以及自定义SQL查询时实体类识别错误的挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先Jar包A中有实体类TEvent 对应数据库表 event,Jar包B中有实体类TEvent对应的数据库表event,当A需要引入B的依赖时候,AB两个Jar包中就会有实体类命名冲突,如果AB中的JPARepository命名相同会直接启动挂掉,repository无法注入。即使repository名字不一样启动成功了,如果repository中有@Query自定义sql
在这里插入图片描述

sql语句中的TEvent会无法识别用哪个包的实体类,如果AB两个jar中TEvent不一致的话,非常有可能导致问题,比如A中的TEvent有occupiedNum这个属性,而B中的TEvent没有这个属性,JPA随机取class,会出现开发环境正常,线上环境直接报错起不来的情况,非常的坑。此外其他方式的自定义查询都有可能产生问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值