本插件github地址:https://github.com/yuzd/ktormgenhtml
代碼生成器支持的數據庫有java
連接:https://pan.baidu.com/s/1XQ8MMuglz1gU_x4Hjnn0wg 提取碼:r861node
以下圖mysql
{
"Type": "Mysql",
"OutPutFolder": "../java/dal",
"IsKotlin": true,
"NamespaceName": "DbModel",
"ConnectionString": "Server=localhost;Port=53306;Database=antmgr;Uid=root;Pwd=123456;charset=utf8;SslMode=none",
"TableFilter": []
}
字段 | 說明 |
---|---|
Type | 支持 mysql 和 sqlserver (sqlserver的話支持在後面指定版本號:sqlserver2000, sqlserver2005,sqlserver2008,sqlserver2012,sqlserver2017,若是不指定的話 sqlserver = sqlserver2008) |
OutPutFolder | 生成的代碼保存在本機的哪一個文件夾(能夠使用絕對路徑和相對路徑) 相對路徑是相對於你選擇的json文件 例如(../java) |
IsKotlin | 須要設置爲true |
KtormVersionNew | 若是用的是新版本的ktorm的話須要設置爲true(由於ktorm更改了namespace) |
NamespaceName | 指定 package 名稱 |
ConnectionString | db鏈接字符串 |
TableFilter | 表名稱的string數組,若是指定了只會生成特定的表的代碼 |
是db裏面的表,一張表對應這個目錄下的一個kotlin文件git
一個model對應一個daogithub
dataBase的擴展方法,只須要拿到database 就能夠拿到表對象進行db操做。 能夠參考下面的代碼。web
val database = Database.connect("jdbc:mysql://localhost:3306/antmgr?user=root&password=123456")
//新增
database.systemMenus.insert {
set(it.Name, "test")
set(it.IsActive,false)
}
//查詢
val systemMenu = database.systemMenus.filter { (it.IsActive) and (it.Name eq "test") }.firstOrNull()
println(systemMenu)
//修改
database.systemMenus.upgrade {
set(it.IsActive,true)
where { it.Name eq "test" }
}
//刪除
database.systemMenus.delete {
it.Name eq "test"
}
更多詳細和複雜用法能夠參考ktorm框架的文檔 https://www.ktorm.org/en/entities-and-column-binding.htmlsql
本插件只是爲了生成db的models代碼和操做擴展方法在Tables.kt文件中數據庫