1. 程式人生 > >mybatis:使用逆向工程生成含有關鍵字屬性的資料表

mybatis:使用逆向工程生成含有關鍵字屬性的資料表

在mysql中如果我們使用關鍵字作為表的列名,那麼在增刪改查的時候,如果要用到該列,則列名要加反引號`` 如:下表 在這裡插入圖片描述

要使用列createtime時需要加``. 而使用mybatis逆向工程生成的mpper檔案中,mybatis會對關鍵字進行處理:在關鍵字列名外加上""

<sql id="Base_Column_List">
 id, name, price, pic, " createtime"
  </sql>

但是加雙引號是不正確的,因為實際上要加的是反引號,用雙引號,屬性" createtime"就變成了一個字串,而不是列名了,在呼叫mapper的時候就會出現返回的是一個字串或者直接丟擲異常的情況. 所以在用mybatis逆向工程的時候,一定要注意mapper檔案中關鍵字列名是否是用反引號``包起來. 我就是因為沒有留意到這個問題,導致我在items實體類接收資料庫返回的資料時,丟擲了Bad format for Timestamp '1’的異常,讓我以為是資料庫中的date型別轉換成java的date型別時,發生了錯誤.實際上,是因為我用date型別接收字串型別導致的