hibernate 映射 column name not found 找不到字段 查询出来的数据是重复的

hibernate 映射 column name not found 找不到字段 或者是查询出来的数据是重复的,

hibernate 字段映射  会出现很多坑,这几天来新公司接手心的项目,然后做功能时出现了很多坑啊,最坑的是上面两个

这里就记录下

1、首先说 找不到字段


看你的实体和数据库有这个字段没,没有就不用看下去了,如果都有的话,

1.出现这种问题是映射 这个实体跟这个数据表的字段不一样,如果是你其他地方使用而不想跟数据表有关系就可以加上注解(如下)

@Transient 

可以不被映射 这是单表情况 如果是多表情况就是有其他表的数据要查出来,但接受的只能有一个实体类吧 (废话),好问题就来了,如果吧那些其他表的字段加到你返回的那个实体里面,那么你使用这个实体的所有查询都要把这些加入的数据放进去,但是有些查询怎么可能要这些字段了,这里有一中解决的办法


放空字段进去,显然这是一个临时解决的方法,如果你想说加上面的注解,呵呵,是不会报找不到字段了,但是这些字段是空值没有与数据库查询出来的数据联系上 。所以也不行。最后一个办法重新写个实体,吧要用的字段写进去,直接看实体类

<span style="font-size:14px;">@Entity
@Table(name = "Order")
public class OrderModel implements java.io.Serializable {

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	@Column(name = "order_id")
	private Integer order_id;</span>

注解都要不然是找不到这个实体的,这样比之前的那种好很多。目前由于框架是这么搭建的只能这样做下去了。


第二个问题 查询出来的数据是重复的

不是说sql或者数据问题,是hibernate的问题,

我查的那个表不是我实体的那个表 所以数据会只有第一条一直重复的 ,

解决的办法就是你查询的sql与你映射的实体要一致,这样会不会一直只有重复的一条了。


手残了,好久没有写博客了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值