最近在做Hibernate的一個(gè)小系統(tǒng)的時(shí)候,遇到一種奇怪的問(wèn)題,具體情況如下:
如果你用的是MySQL的時(shí)候,
假設(shè)數(shù)據(jù)庫(kù)名為T(mén)estDB
表名為testTable
你在寫(xiě)url的時(shí)候,你會(huì)寫(xiě)成這樣:jdbc:mysql://localhost:3306/TestDB 后面有加了數(shù)據(jù)庫(kù)名TestDB
這里的TestDB就是數(shù)據(jù)庫(kù)名稱(chēng)
而如果你在你的映射文件里面寫(xiě)明了schema="TestDB"的話,在運(yùn)行過(guò)程中,會(huì)出現(xiàn)Table 'TestDB.TestDB_testTable' doesn't exist的異常,
原因就是,你在url和映射文件里面同時(shí)定義了數(shù)據(jù)庫(kù)的名稱(chēng),所以Hibernate就會(huì)出現(xiàn)這樣的錯(cuò)誤。
解決方法:將映射文件里面的schema去掉即可。
心得:原來(lái)以為寫(xiě)的清楚一些會(huì)比較好,現(xiàn)在看來(lái)寫(xiě)的太清楚也不是好事哦~呵呵~?