<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          auto-codeJava 代碼自動(dòng)生成器

          聯(lián)合創(chuàng)作 · 2023-09-28 02:59

          auto-code

          歡迎使用auto-code代碼自動(dòng)生成引擎.2.1.0 再次升級.現(xiàn)在生成代碼不再需要書寫yaml文件.直接可以通過頁面生成 單表一對一一對多 ,多對多代碼 源碼地址 代碼生成演示地址

          項(xiàng)目介紹

          項(xiàng)目的優(yōu)勢在哪里

          1.目前市面上的代碼生成工具絕大多數(shù)僅僅支持生成單表,該項(xiàng)目支持 單表一對一一對多 ,多對多 代碼生成.大大簡化了開發(fā)的工作量

          2.只要目前你的項(xiàng)目采用 springMVC+spring+mybatis架構(gòu)的項(xiàng)目都適用(傳統(tǒng)工程和springBoot工程都適用). 不管一次開發(fā)還是二次開發(fā).該項(xiàng)目僅僅只是幫你生成單表以及多表的增刪改查,不做任何底層的改動(dòng).

          什么情況選擇該項(xiàng)目

          1.該項(xiàng)目只生成接口(controller,service,serviceImpl,dao,xml), 不生成頁面.所以如果項(xiàng)目是采用前后臺分離,不需要寫頁面.該項(xiàng)目會(huì)適合你

          2.如果還想生成頁面請看該項(xiàng)目,這個(gè)項(xiàng)目基于本項(xiàng)目.擴(kuò)展了頁面生成.適合后臺使用 源碼地址 演示地址 賬號 ztp 密碼 111111

          為何會(huì)發(fā)起該項(xiàng)目?

          絕大多數(shù)時(shí)候我們都是在做增刪改查.每次創(chuàng)建一張表.然后我們需要重新寫一次增刪改查, 寫雖然簡單,不過極度耗時(shí)(controller,server,serverImpl,dao,xml) 所以才有了該項(xiàng)目,該項(xiàng)目能幫助你減少70%的工作量,讓你專注于業(yè)務(wù)的實(shí)現(xiàn).

          集成教程

          非常簡單.只需要短短的幾部就能完成集成

          1.傳統(tǒng)java-web集成請看這里 項(xiàng)目地址

          2.spring-boot集成請看這里 項(xiàng)目地址

          使用教程

          準(zhǔn)備工作

          1.集成非常簡單請查看上面的項(xiàng)目.選擇自己需要的方式.里面有實(shí)例工程可供參考

          2.成功后訪問 http://localhost:8070/auto-code-ui/ui/index.html

          界面如下: 

          單表生成

          假設(shè)我們要生成一張單表

          CREATE TABLE `test_simple_code` (
            `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
            `name` varchar(50) DEFAULT NULL COMMENT '名稱',
            `age` int(3) DEFAULT NULL COMMENT '年齡',
            `status` int(2) DEFAULT NULL COMMENT '{"name":"狀態(tài)","1":"啟用","0":"禁用"}',
            `birthday` date DEFAULT NULL COMMENT '生日',
            `remarks` text COMMENT '備注',
            `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
            PRIMARY KEY (`id`)
          ) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8 COMMENT='單表代碼生成';

          1.在數(shù)據(jù)庫建表

          1.   
          2. 界面選擇單表生成.選擇對應(yīng)的表,點(diǎn)擊生成預(yù)覽. 最后點(diǎn)擊確認(rèn)生成. 完畢.

          生成的文件如下: 

          3.生成完畢

          一對一代碼生成 one-to-one (代碼采用追加的方式.無需擔(dān)心代碼被覆蓋)

          一個(gè)用戶對應(yīng)一個(gè)班級

          CREATE TABLE `test_one_to_one_user` (
            `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'id',
            `name` VARCHAR(50) DEFAULT NULL COMMENT '名稱',
            `age` INT(3) DEFAULT NULL COMMENT '年齡',
            `status` INT(2) DEFAULT NULL COMMENT '{"name":"狀態(tài)","1":"啟用","0":"禁用"}',
            `birthday` DATE DEFAULT NULL COMMENT '生日',
            `remarks` TEXT COMMENT '備注',
            `mun` DECIMAL(20,2) DEFAULT NULL COMMENT '數(shù)字',
            `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
            `update_time` DATETIME DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時(shí)間',
            PRIMARY KEY (`id`)
          ) ENGINE=INNODB AUTO_INCREMENT=44 DEFAULT CHARSET=utf8 COMMENT='一對一用戶';
          
          CREATE TABLE `test_one_to_one_class` (
            `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '班級id',
            `user_id` INT(11) DEFAULT NULL COMMENT '用戶id',
            `class_name` VARCHAR(50) DEFAULT NULL COMMENT '班級名稱',
            `quantity` INT(11) DEFAULT NULL COMMENT '班級人數(shù)',
            `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP,
            PRIMARY KEY (`id`)
          ) ENGINE=INNODB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COMMENT='一對一班級';
          

          打開界面.選擇對應(yīng)的表,一對一比單表多了一個(gè)外鍵id. 比如上面兩張表的關(guān)系就是通過 user_id來關(guān)聯(lián)的 如下:

          test_one_to_one_user.id=test_one_to_one_class.user_id

          一對多 代碼生成 one-to-Many (代碼采用追加的方式.無需擔(dān)心代碼被覆蓋)

          一對多一對一一樣不再描述

          多對多 代碼生成 many-to-many (代碼采用追加的方式.無需擔(dān)心代碼被覆蓋)

          多個(gè)用戶 對應(yīng) 多個(gè)角色

          CREATE TABLE `test_many_to_many_role` (
            `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '角色',
            `name` VARCHAR(100) NOT NULL COMMENT '角色名稱',
            `status` INT(2) DEFAULT '0' COMMENT '{"name":"狀態(tài)","0":"啟用","1":"禁用"}',
            `create_user_id` INT(11) DEFAULT NULL COMMENT '創(chuàng)建者',
            `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
            `update_user_id` INT(11) DEFAULT NULL COMMENT '更新者',
            `update_time` DATETIME DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時(shí)間',
            `dels` INT(2) DEFAULT '0' COMMENT '{"name":"是否刪除","0":"正常","1":"刪除"}',
            PRIMARY KEY (`id`)
          ) ENGINE=INNODB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COMMENT='多對多角色';
          
          CREATE TABLE `test_many_to_many_user` (
            `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'id',
            `name` VARCHAR(50) DEFAULT NULL COMMENT '名稱',
            `age` INT(3) DEFAULT NULL COMMENT '年齡',
            `status` INT(2) DEFAULT NULL COMMENT '{"name":"狀態(tài)","1":"啟用","0":"禁用"}',
            `birthday` DATE DEFAULT NULL COMMENT '生日',
            `remarks` TEXT COMMENT '備注',
            `mun` DECIMAL(20,2) DEFAULT NULL COMMENT '數(shù)字',
            `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
            `update_time` DATETIME DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時(shí)間',
            PRIMARY KEY (`id`)
          ) ENGINE=INNODB AUTO_INCREMENT=43 DEFAULT CHARSET=utf8 COMMENT='多對多用戶';
          
          CREATE TABLE `test_many_to_many_user_role` (
            `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '測試用戶角色',
            `user_id` INT(11) DEFAULT NULL COMMENT '用戶id',
            `role_id` INT(11) DEFAULT NULL COMMENT '角色id',
            `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
            PRIMARY KEY (`id`)
          ) ENGINE=INNODB AUTO_INCREMENT=140 DEFAULT CHARSET=utf8 COMMENT='多對多用戶角色';

          1.打開界面.選擇對應(yīng)的表,多對多一對一多了一個(gè)關(guān)系描述表 比如上面三張表的關(guān)系是通過 test_many_to_many_user_role來表述的.如下:

          test_many_to_many_user_role.user_id=test_many_to_many_user.id and test_many_to_many_user_role.role_id=test_many_to_many_role.id

          生成代碼注意事項(xiàng)

          1.創(chuàng)建表結(jié)構(gòu)時(shí)如果寫上表與字段的注釋將大大增加程序的可讀性.我會(huì)將注釋寫到bean上面.
          2.如果注釋為json鍵值對字符串我將會(huì)在實(shí)體類生成一個(gè)字典方法
          如:  {"1":"啟用","0":"禁用"} 將會(huì)在實(shí)體類里面生成:
              public String getStatus_(){
              if(MyStringUtils.isEmpty(status)){
                 return "";
              }else if(status.equals("1")){
                return "啟用";
              }else if(status.equals("0")){
                return "禁用";
              }
              return "";
          
            }

          配置參數(shù)介紹

          如果是spring boot請以auto-code.xx 開頭.如:

          auto-code.cover=false
          或者
           auto-code:
              cover: false

          如果是java web請使用yaml格式書寫 如:

           globalConfig: 
              parentPack                                                                                                                       
          參數(shù)名 默認(rèn)值 介紹
          parentPack 生成代碼的父包 如父包是com.zengtengpeng.test controller將在com.zengtengpeng.test.controller下 bean 將在com.zengtengpeng.test.bean下 ,service,dao同理
          parentPath 生成代碼的項(xiàng)目根路徑
          cover false 是否覆蓋生成 默認(rèn)不覆蓋
          swagger true 是否生成swagger注解 (spring boot下如果為false將無法查看swagger頁面)
          javaSource src/main/java java在項(xiàng)目中的源路徑
          resources src/main/resources resource位置
          xmlPath mybatisMapper mybatis xml存放的路徑
          packageBean bean 生成bean尾綴
          packageDao dao 生成dao尾綴
          packageController controller 生成controller尾綴
          packageService service 生成service尾綴
          packageBean bean 生成bean尾綴
          autoCode true 是否啟用代碼生成器(生成環(huán)境建議關(guān)閉)
          watchMobel false 觀察者模式.只能看.不能生成代碼(演示環(huán)境用的)
          瀏覽 22
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产一区二区三区片 | 特级西西444WWW视频 | 人成视频在线观看 | 久久艹大香蕉 | 含羞草91 |