Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 获取元素时HashMap为Null_Java_Spring_Hibernate_Jpa_Spring Boot - Fatal编程技术网

Java 获取元素时HashMap为Null

Java 获取元素时HashMap为Null,java,spring,hibernate,jpa,spring-boot,Java,Spring,Hibernate,Jpa,Spring Boot,我在DB colomun Hashmap中使用Hstore类型: @TypeDef(name = "hstore", typeClass = HstoreUserType.class) @Type(type="hstore") @Column(columnDefinition = "hstore") private HashMap<String,String> extraInfo; @TypeDef(name=“hstore”,typeClass=HstoreUserType.c

我在DB colomun Hashmap中使用Hstore类型:

@TypeDef(name = "hstore", typeClass = HstoreUserType.class)

@Type(type="hstore")
@Column(columnDefinition = "hstore")
private HashMap<String,String> extraInfo;
@TypeDef(name=“hstore”,typeClass=HstoreUserType.class)
@类型(Type=“hstore”)
@列(columnDefinition=“hstore”)
私有HashMapExtraInfo;
问题是,当我在Hashmap为null的表中获得一个元素时,我会收到一条消息:

java.lang.NullPointerException: null
    at java.util.StringTokenizer.<init>(Unknown Source) ~[na:1.8.0_121]
    at java.util.StringTokenizer.<init>(Unknown Source) ~[na:1.8.0_121]
    at com.HstoreUserType.convertToEntityAttribute(HstoreUserType.java:138) ~[classes/:na]
    at com.HstoreUserType.nullSafeGet(HstoreUserType.java:71) ~[classes/:na]
    at org.hibernate.type.CustomType.nullSafeGet(CustomType.java:111) ~[hibernate-core-5.0.12.Final.jar:5.0.12.Final]
    at org.hibernate.type.AbstractType.hydrate(AbstractType.java:85) ~[hibernate-core-5.0.12.Final.jar:5.0.12.Final]
java.lang.NullPointerException:null
位于java.util.StringTokenizer。(未知源)~[na:1.8.0_121]
位于java.util.StringTokenizer。(未知源)~[na:1.8.0_121]
在com.HstoreUserType.convertToEntityAttribute(HstoreUserType.java:138)~[classes/:na]
在com.HstoreUserType.nullSafeGet(HstoreUserType.java:71)~[classes/:na]
在org.hibernate.type.CustomType.nullSafeGet(CustomType.java:111)~[hibernate-core-5.0.12.Final.jar:5.0.12.Final]
在org.hibernate.type.AbstractType.hydrate(AbstractType.java:85)~[hibernate-core-5.0.12.Final.jar:5.0.12.Final]

我想使用此Column optionnal,当hashmap为空时,不要转到类型定义中的HstoreUserType.class。

是否尝试将新的空映射分配给实体中的此字段?如果没有数据,我想不分配映射,这是可能的?在Jpa中?你的意思是,在Jpa中是否可以将映射字段持久化为单个列?是的,使用
AttributeConverter
,而不使用某些JPA提供商供应商扩展