我有一个包含大量信息的表格。从 View 页面更新此表时,我没有加载所有信息。
下面是我使用hibernate更新表格的代码
HibernateTemplate hibernateTemplateObj = getHibernateTemplate();
hibernateTemplateObj.update(myEntityBean);
上面是更新字段,但在我的 View 页面上不可见的字段将更新为空白。
所以,我使用了下面的一个......
HibernateTemplate hibernateTemplateObj = getHibernateTemplate();
hibernateTemplateObj.update("myRequiredField", myEntityBean);
根据文档here它说如果我使用 update("string",entity) 它将更新该字段。但它的工作方式并不一样。
任何人都可以提出建议吗?
<小时/>我发现了一些帖子。
它说,我需要创建查询。但我不知道如何从中创建查询? 如果有人有任何想法..请帮忙。我认为这些帖子中存在已知问题。
最佳答案
您可以像这样使用 Session 对象创建查询。
SessionFactory factory= HibernateUtil.getSessionFactory();
session = factory.openSession();
session.beginTransaction();
Query query = session.createQuery("Select c.productList from Cart c Where c.cartId=:cartId");
query.setParameter("cartId", cart.getCartId());
List productList=(List) query.list();
session.getTransaction().commit();
虽然您知道应该从查询中返回什么类型的对象,但您可以转换它并使用它。 您可以编写 native 查询或 hibernate 查询,但我认为 hibernate 查询更容易。
关于java - 更新表的特定字段,而不考虑hibernate中的其他字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10016167/