为什么在带有注释的方法返回后,我无法获取product.getName()
id 加载的实体对象的值?当我以这种方式获得产品对象时,一切都很好。session.load(product.class,1)
@Transactional
session.createQuery("from Product as product WHERE product.id = 1)
编辑
道法
public Product getProduct(Long id) {
return (Product) currentSession().load(Product.class, id);
}
服务方式
@Transactional
public Product getProduct(Long id) {
return productDao.getProduct(id);
}
控制器方法 - 它应该发送 JSON,但它会因product.getName()
错误而中断org.hibernate.LazyInitializationException: could not initialize proxy - no Session
@RequestMapping(value = "/product",headers="Accept=application/json")
public @ResponseBody Product getProduct() {
Product product = productService.getProduct(new Long(1));
System.out.println(product.getName());
return product;
}