[英]Integer not receiving Null value from Mysql - Hibernate/JPA . Java Spring?
这是 Hibernate JPA,Spring 相关问题。
我s in mysql. Some of them have int values some of them have null
存储 int s in mysql. Some of them have int values some of them have null
s in mysql. Some of them have int values some of them have null
s。
当我坚持到 db 时一切正常,但是当我将值绑定回对象时,Integer 没有收到 null?! 和应用程序崩溃:
@Entity
@Table(name="oglas")
public class OglasJPA {
@ManyToOne
@JoinColumn(name="spratnost_objekta_ID")
private SpratnostObjektaJPA spratnostObjekta;
@Entity
@Table(name="spratnost_objekta")
public class SpratnostObjektaJPA {
@Id
@Column(name="idspratnost_objekta")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer id;
@Column(name="spratnost_objekta")
private Integer spratnost;
@OneToMany(mappedBy="spratnostObjekta")
private List<OglasJPA> listaOglasaZaSpratnostObjekta;
public List<Oglas> getAllOglas(){
List<OglasJPA> listaOglasaJPA = getOglasRepository().getAllOglas();
for(OglasJPA oglasJPA : listaOglasaJPA){
System.out.println(oglasJPA.getSpratnostObjekta().getId());
}
代码被缩短以便于审查。
只要来自 db 的 in(11) 具有 int 值,应用程序就可以工作。 当 for 循环使用嵌套异常 java.lang.NullPointerException 遇到 null 程序中断时
非常感谢帮助!
找到了解决办法。 问题是 EntityManager 尝试检索 id 为 null 的实体。 我忘记了表中的值代表一个对象,因为它是另一个表的外键。 try-catch 解决了问题! 仍然无法相信我没有早点意识到这一点。 好吧,我想每天编码 7 天/12 小时后会发生奇怪的事情!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.