我有一个原型实体bean,有多个字段和两个瞬态实体。其中一个是原型,另一个是单身。
@Component
@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
@Entity
@Table(name = "tableA")
class A{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
private String name;
@Autowired
@Transient
private CacheA cache; //Prototype bean for caching some calc results
@Autowired
@Transient
private ServiceA service; //Singleton service bean
}
一切正常,直到我尝试从数据库中读取实例,因为当Hibernate创建实例时,Spring不会自动装配任何字段。
一些额外的信息:我使用CrudRepository和spring-boot自动配置的hibernate。
如何妥善解决此类案件?这是预期的行为,还是我应该为hibernate做一些额外的配置来使用spring上下文?