本文出處:http://blog.csdn.net/chaijunkun/article/details/8647281,轉載請註明。由於本人不定期會整理相關博文,會對相應內容作出完善。因此強烈建議在原始出處查看此文。
今天做項目遇到了一個問題,是以前沒注意的。我用的是Spring MVC+ Hibernate JPA + MySQL數據庫。在插入數據後SQL執行日誌中會多出一條select語句:
Hibernate: insert into click_statstic (logDate, memoId, src, typeId) values (?, ?, ?, ?)
Hibernate: select last_insert_id()
表中有個主鍵是自增列。可是在以往的項目中,沒發現有這樣的問題。於是在網上各種找也找不到原因。心想可能是配置問題。
最終在persistence.xml配置文件中找到了這樣一條配置:
<property name="hibernate.temp.use_jdbc_metadata_defaults" value="false" />
把這條配置刪除就沒有了多餘的select語句。具體原因和這樣做的目的是什麼不得而知。如果有知道的朋友請分享下~多謝了。