java如何让Hibernate忽略实体中不存在的表列?
我将Java与SpringMVC和Hibernate一起使用。我有很多实体,一切都很好。但是,如果我在数据库的某个列中添加了一个列,我的服务将开始崩溃,直到我用新列更新相关的java实体类为止
有没有办法告诉Hibernate忽略它无法识别的数据库列?如果希望实体中有一个字段不在DB表中,可以在该字段上使用@Transient。我想要相反的结果
如果这是不可能的,那么当需要进行数据库更新时,如何部署Hibernate服务
你可以在下面搜索框中键入要查询的问题!
我将Java与SpringMVC和Hibernate一起使用。我有很多实体,一切都很好。但是,如果我在数据库的某个列中添加了一个列,我的服务将开始崩溃,直到我用新列更新相关的java实体类为止
有没有办法告诉Hibernate忽略它无法识别的数据库列?如果希望实体中有一个字段不在DB表中,可以在该字段上使用@Transient。我想要相反的结果
如果这是不可能的,那么当需要进行数据库更新时,如何部署Hibernate服务
# 1 楼答案
在向Hibernate管理的表中添加新列后,Hibernate不会“崩溃”。Hibernate方案验证仅限于验证映射列是否可以存储在数据库中,而不会在数据库中查找未映射的列
导致问题的可能原因是新的非空字段。添加这样的字段将使Hibernate无法将任何内容持久化到该表中,因为它不知道该字段的存在,并且在插入时不会提供该字段。解决这个问题的办法是: