我被一位透视雇主问了一个问题,我需要调查并为下一次电话采访做好准备。
他们知道我没有Hibernate经验,他们问我以下内容: 描述使用Hibernate写入数据库的多种方法。
很公平,我一直在阅读和谷歌搜索,就像没有明天一样,我找到了如下例子来说明如何更新表格中的一行:
Query query = session.createQuery("update Stock set stockName = :stockName" +
" where stockCode = :stockCode");
query.setParameter("stockName", "DIALOG1");
query.setParameter("stockCode", "7277");
int result = query.executeUpdate();
这对我来说很有意义,现在我对HQL的工作方式有了深入的了解,使用类名和属性,而不是表名和列。
但他们用另一种写入数据库的方式是什么意思呢?有没有人知道他们试图让我找到Hibernate的哪些功能?
答案 0 :(得分:0)
例如,您可以直接保存实体的实例:
Stock stock = new Stock();
session.save(stock);
但您也可以执行本机SQL语句:
session.createSQLQuery("insert into stock_table ...").executeUpdate();