當前位置:首頁 » 編程語言 » hibernate完整sql
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

hibernate完整sql

發布時間: 2023-03-06 11:25:58

❶ 如何用hibernate直接進行sql語句查詢

String sql="SQL語句";session.createSqlQuery(sql);

❷ HIBERNATE如何用SQL啊

Session session=getSession();
sql="insert into userRole(userID,roleID) values(?,?)
session.createSQLQuery(sql);

❸ hibernate 使用log4j在myeclipse中輸出SQL完整信息,但是怎麼弄都沒顯示,大家看看那裡錯了

hibernate在控制台顯示sql代碼,是在property節點添加如下內容<property name="show_sql">true</property>,配置了這個應該就可以顯示sql語句。你的錯誤,很有可能是配置的前面的錯誤,影響了後面的運行。或者你寫的代碼根本就沒有實現從資料庫提取數據的功能。

❹ Hibernate如何執行原生的SQL語句

hibernate本來就支持 原sql 調用執行sql的方法就行了 調用方法的時候注意看所需的參數
@Autowired
private SessionFactory sessionFactory;

sessionFactory.getCurrentSession().createSQLQuery(sql);

這樣就可以了

❺ HIBERNATE怎樣查看sql語句

弄hibernate時,想顯示sql語句,可以設置show_sql為true來達到這個目的,但是參數值全是像PreparedStatement一樣,用?來代替的。用p6spy可以達到顯示的那些參數原值的目的,但可讀性差。可以利用SQL Profiler來處理這個事情。p6spy: http://www.p6spy.com/SQL Profile: http://www.jahia.net/jahia/page597.htmlp6spy安裝:* 將p6spy.jar放到WEB-INF/lib目錄下,將spy.properties放到WEB-INF/classes目錄下。* 修改你 原有 JDBC Driver為:com.p6spy.engine.spy.P6SpyDriver* 修改 spy.properties 中的 realdriver 值為 原有 的JDBC Driver,比如我的是:com.mysql.jdbc.Driver* 完成,運行web server。我的日誌記錄產生在 %TOMCAT_HOME%\bin下,此log位置可以能過修改 logfile = x:\x_dir\spy.log 來控制打開看看,看裡面的日誌是不是看起來比較不爽?下面我們安裝SQL Profiler來讓自已的視線爽一點。SQL Profiler安裝:(須p6spy成功安裝)* 將SQL Profiler自帶的spy.properties覆蓋原來的classes目錄下文件* 修改現在spy.properties中realdriver 值為 原有 的JDBC Driver看後看看readme注意這幾句 ^__^ :1. Start the GUI2. Start the webapp, in starts doing some JDBC requests we will ignore3. Press the "reset" button on the GUI4. Make a request to the webapp5. Press the "pause" button after the request has finished executing6. Press the "report" button to save profiling results as a CSV file* 我們先用java -jar sqlprofiler.jar 運行 sql profiler* 然後啟動web server :-)一切盡在眼前了吧?

❻ Hibernate中的SQL寫法。

我比較喜歡hibernate本身自帶的HQL語言,增刪改查語句基本不用自己寫。

添加:
Admin admin=new Admin();
admin.set...();
session.save(admin);
刪除:
session.delete(admin);
修改:
Admin admin=session.load(Admin.class,new Integer(i));
session.saveOrUpdate(admin);
查詢:
Query query = session.createQuery("select OBJECT(o) from Admin o order by o.adminid");
亦可寫成:
Query query = session.createQuery("from Admin");
注意:hibernate的業務邏輯操作必須放在事務中,代碼如下:
Transaction tr = session.beginTransaction();
try {
****增刪改查語句***
// 提交事務
tr.commit();
} catch (Exception e) {
// 回滾事務
tr.rollback();
} finally {

}
還有,hibernate內的語句不是SQL,而是HQL,但它支持SQL,又它特定的寫法;表名不是資料庫的名字,而是映射後的實體類(表)的名字;而且,是直接對資料庫進行操作,也就hibernate的事務一提交,資料庫內的信息就做了相應的修改;最後,hibernate不是個軟體,而是一個插件,通俗的說法是別人寫好的「包」,導入項目後,根據「包」的規范去做快速開發。