Java Hibernate-为什么字符串属性被延迟加载?

Java Hibernate-为什么字符串属性被延迟加载?,java,hibernate,spring-data,Java,Hibernate,Spring Data,我有一个简单的实体配置,它有一个ID和一个String属性 @Data @AllArgsConstructor @NoArgsConstructor @Wither @Entity @Table(name = "CONFIGURATION") public class Configuration { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = "ID&q

我有一个简单的实体
配置
,它有一个ID和一个String属性

@Data
@AllArgsConstructor
@NoArgsConstructor
@Wither
@Entity
@Table(name = "CONFIGURATION")
public class Configuration {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ID")
    private Long id;

    @Column(name = "CONFIG_OBJECT")
    private String configItem1;
}
我有一个简单的JPA存储库

public interface ConfigurationRepository extends JpaRepository<Configuration, Long> {

}
但我有个例外
无法初始化代理[com.mk.myapp.model.Configuration#1]-无会话


我假设属性
configItem1
被延迟加载,但是为什么呢?当我在关系中有一些实体时,我会想到这一点,但是为什么要延迟加载字符串属性呢?

用于检索配置实体的方法
getOne(1)
总是返回一个带有未初始化字段的代理。只有id字段被自动填充

尝试存储库中的
findbyId
方法获取配置,您将发现字符串字段已填充

这个问题以前也已回答过,例如,因此我认为可以将其作为副本关闭

final Configuration configuration = configurationRepository.getOne(1L);//id 1 exists
configuration.getConfigItem1(); //the exception is thrown here