日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

Java自动切表_java_Mybatis自动创建表和更新表结构,最近有小伙伴问我mybatis有没有 - phpStudy...

發布時間:2025/3/11 php 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java自动切表_java_Mybatis自动创建表和更新表结构,最近有小伙伴问我mybatis有没有 - phpStudy... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Mybatis自動創建表和更新表結構

最近有小伙伴問我mybatis有沒有自動創建表結構的功能,因為他們之前一直使用hibernate用習慣了,理所當然的認為,在實體類上配置下注解或者寫寫映射文件,系統啟動后就可以自動創建表。

我只能很遺憾的告訴他,mybatis并沒有這個功能,看他興致闌珊的樣子,我只能安慰他,就算沒有這功能,我們可以自己開發啊~~

所以就有了下面這套系統,已開源大家可以下來看看~~

Mybatis_BuildTable_V0.2

https://git.oschina.net/sunchenbin/Mybatis_BuildTable_V0.2.git

該項目架構使用的是SpringMvc+Mybatis+Maven,功能特點是通過配置model注解的方式來創建表,修改表結構,目前僅支持Mysql,因為重點是突出mybatis自動創表的功能,所以在框架上沒有話太多心思。

使用規范:

核心代碼都在model-store-repo中

1.SysMysqlColumns.java這個對象里面配置的是mysql的數據類型,這里配置的類型越多,意味著創建表時能使用的類型越多

2.LengthCount.java是一個自定義的注解,用于標記在SysMysqlColumns.java里面配置的數據類型上的,標記該類型需要設置幾個長度,如datetime/varchar(1)/decimal(5,2),分別是需要設置0個1個2個

3.Column.java也是一個自定義的注解,用于標記model中的字段上,作為創建表的依據如不標記,不會被掃描到,有幾個屬性用來設置字段名、字段類型、長度等屬性的設置,詳細請看代碼上的注釋

4.Table.java也是一個自定義的注解,用于標記在model對象上,有一個屬性name,用于設置該model生成表后的表名,如不設置該注解,則該model不會被掃描到

ok,系統啟動后會去自動調用SysMysqlCreateTableManagerImpl.java的createMysqlTable()方法,沒錯,這就是核心方法了,負責創建、刪除、修改表。

model-store-frontend/resources/config/autoCreateTable.properties

你會發現有這樣一個配置文件,其中有兩項配置

1.mybatis.table.auto=update

2.mybatis.model.pack=com.sunchenbin.store.model

本系統提供兩種模式:

1.當mybatis.table.auto=create時,系統啟動后,會將所有的表刪除掉,然后根據model中配置的結構重新建表,該操作會破壞原有數據。

2.當mybatis.table.auto=update時,系統會自動判斷哪些表是新建的,哪些字段要修改類型等,哪些字段要刪除,哪些字段要新增,該操作不會破壞原有數據。

3.mybatis.model.pack這個配置是用來配置要掃描的用于創建表的對象的包名

系統配置的是使用maven來啟動的,web依賴repo,frontend和mobile依賴web,所以要運行frontend和mobile,必須先instal一下web和repo

至于如何用maven啟動項目….不再多說了。

以上所述是小編給大家介紹的Mybatis自動創建表和更新表結構的全部敘述,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對phpstudy網站的支持!相關閱讀:

JavaWeb搭建網上圖書商城畢業設計

jquery.qtip提示信息插件用法簡單實例

Android防止按鈕過快點擊造成多次事件的解決方法

Javascript實現商品秒殺倒計時(時間與服務器時間同步)

win10 edge瀏覽器怎么樣 win10 edge瀏覽器上手體驗評測

jQuery Validate插件實現表單強大的驗證功能

css實現的滑動鼠標到img后切換圖片移開恢復默認

從零開始學android實現計算器功能示例分享(計算器源碼)

win7文件夾應該怎么加密?win7文件夾加密教程

LTSB分支上的Win10企業版不會預裝Edge瀏覽器

Win10系統怎么打開OneNote云筆記

oracle誤刪數據恢復方法小結

基于JS實現新聞列表無縫向上滾動實例代碼

win7寬帶連接錯誤提示738情況的解決方法介紹

總結

以上是生活随笔為你收集整理的Java自动切表_java_Mybatis自动创建表和更新表结构,最近有小伙伴问我mybatis有没有 - phpStudy...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。