hibernate鏈結資料庫查詢亂碼的問題

2021-07-10 05:52:33 字數 867 閱讀 1579

hibernate中條件查詢其實是一件非常有意思的事情。能夠熟練使用它的人來說,配置、使用hibernate可謂是手到擒來,但是對於我們這些菜鳥們來說,使用hibernate不熟悉,就會導致各種各樣的問題,今天我就遇到了低階的問題,「白白浪費」了我4個多小時的時間。

我使用hibernate的criteria進行條件查詢,當我輸入的條件的是數字或者無條件輸入的時候,能夠查詢出來資料,但當我輸入漢字查詢的時候,雖然形成的sql語句中新增了查詢條件,但就是查詢不出來資料,這是為什麼呢?(如下所示的**)

jdbc:mysql://localhost:3306/meikuang?useunicode=true&characterencoding=utf-8

因為我的資料表是匯入的excel,所以我懷疑是匯入的資料表有問題,但是在我採用hibernate的create方法自動生成表之後,再匯入表,查詢還是沒有資料。因此不是表的問題。

我將以上的sql語句放在mysql上執行,明明可以查詢到資料,因此,我的直覺告訴我應該是hibernate查詢的時候,輸入的漢字條件有問題,一提漢字,想必我們程式猿都明白------編碼問題,是程式設計開發中非常頭疼的問題。如果確認是編碼問題,很好解決,但是找不到的確非常的蛋疼。

我檢查了資料庫和程式的編碼都是一致的(utf-8),但hibernate的編碼格式沒有設定編碼格式,導致亂碼無法查詢。

jdbc:mysql://localhost:3306/meikuang?useunicode=true&characterencoding=utf-8

所以在hibernate配置時一定要配置hibernate資料庫連線的編碼格式,否則就會出現很多問題。

Hibernate 鏈結資料庫方便得多 !

之後我們需要做乙個hibernate的配置檔案內容如下 這裡鏈結的是mysql的資料庫 configuration public hibernate hibernate configuration dtd 3.0 en com.mysql.jdbc.driver jdbc mysql localho...

hibernate鏈結兩個資料庫查詢

hibernate可鏈結兩個不同的資料庫,可以都是mysql或者乙個mysql乙個sql seiver等 具體如下 一 在src下 寫兩個hibernate.cfg.xml檔案 如 hbn mysql.cfg.xml和hbn sqlserver.cfg.xml 二 分別解析上面的兩個.cfg.xml...

Sql Server臨時表獲取鏈結資料庫查詢結果

sql server的儲存過程不長常寫,獲取鏈結資料庫查詢結果更新到當前資料庫廢了點精力,整理下供參考。鏈結查詢動態sql語句的寫法。獲取鏈結查詢結果。declare sql varchar 1000 create table tb name varchar 300 set sql select f...