說來挺奇怪,在同樣的環境下,可以創建任何一張新的表,但就是有一張表不能被自動創建.
model基本屬性如下:
public class MSM extends IDEntity{
private Admin from;
private Admin to;
private String title;
private Boolean read;
private Boolean fromDel;
private Date createTime;
// 以下爲getter,setter方法,都是自動生成,不可能會有錯
}
對應的映射文件如下(只列出關鍵的部分代碼):
<property column="TITLE" length="50" name="title"/> <property column="READ" name="read"/> <property column="FROM_DEL" name="fromDel"/> <property column="TO_DEL" name="toDel"/> <property column="CONTENT" name="content" type="text"/>
其它配置均無任何問題,但就是不能自動創建表,實驗了多種辦法,包括重新寫model和映射文件,都無濟於事.
最後仔細查看了一個映射文件當中的每一個屬性,發現其中有一個屬性如下:
<property column="READ" name="read"/>
當我將這個屬性去掉後,發現居然又能自動創建表了,真是奇怪,也沒找到什麼別的參考文檔,猜想這可能和數據庫有關,也許這個值是數據庫的一個關鍵字吧.
特此記下來,希望有類似的經歷的朋友,看到後注意一下這個地方.
注:我的數據庫使用MYSQL