Spring Boot API Project Seed Plus
來源自:https://github.com/lihengming/spring-boot-api-project-seed
演示GIF
https://github.com/tyronczt/spring-boot-learning/blob/master/images/seed-plus.gif
第一步 :下載源碼
https://github.com/tyronczt/spring-boot-learning/tree/master/spring-boot-00-seed-plus
第二步:配置數據庫
導入數據表
DROP TABLE IF EXISTS `t_user_info`;
CREATE TABLE `t_user_info` (
`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'id',
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '姓名',
`sex` varchar(2) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性別',
`age` int(11) NULL DEFAULT NULL COMMENT '年齡',
`job` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工作',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '新增時間',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新時間',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用戶信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of t_user_info
-- ----------------------------
INSERT INTO `t_user_info` VALUES ('1', '張三', '男', 32, '教師', '2020-04-18 16:00:55', NULL);
INSERT INTO `t_user_info` VALUES ('2', '李四', '女', 22, '學生', '2020-04-18 16:01:40', NULL);
INSERT INTO `t_user_info` VALUES ('3', '張莎莎', '女', 35, '律師', '2020-04-18 16:02:15', NULL);
INSERT INTO `t_user_info` VALUES ('4', '陳鋒', '男', 33, '建築師', '2020-04-18 16:03:01', NULL);
SET FOREIGN_KEY_CHECKS = 1;
修改項目中的數據源及表名
application-dev.yml
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
driver-class-name: com.mysql.cj.jdbc.Driver
spring-boot-00-seed-plus\src\main\java\com\tyron\core\Constant.java
//JDBC配置,請修改爲你項目的實際配置
public static final String JDBC_URL = "jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC";
public static final String JDBC_USERNAME = "root";
public static final String JDBC_PASSWORD = "123456";
public static final String JDBC_DIVER_CLASS_NAME = "com.mysql.cj.jdbc.Driver";
第三步:執行main方法,測試
執行main方法
spring-boot-00-seed-plus\src\test\java\com\tyron\project\CodeGenerator.java
public static void main(String[] args) {
genCodeByCustomModelName("t_user_info", "TUserInfo", "用戶信息");
}
提示信息
TUserInfo.java 生成成功
TUserInfoMapper.java 生成成功
TUserInfoMapper.xml 生成成功
TUserInfoService.java 生成成功
TUserInfoServiceImpl.java 生成成功
TUserInfoController.java 生成成功
測試CRUD
1、啓動項目
2、查看swagger
http://localhost:7080/swagger-ui.html#
3、Mybatis-Plus測試
@Resource
private TUserInfoMapper tUserInfoMapper;
@GetMapping("mybatisplustest")
public Result mybatisPlusTest() {
List<TUserInfo> users = tUserInfoMapper.selectList(new QueryWrapper<TUserInfo>().lambda().like(TUserInfo::getName, "陳").lt(TUserInfo::getAge, 40));
return ResultGenerator.genSuccessResult(users);
}
注:測試原因,直接在controller裏寫Mapper,正常需要寫在service中,或者直接調用Mybatis-Plus自帶的service方法
改動說明
- 增加Mybatis-Plus插件,詳細使用介紹可參考:MyBatis-Plus 快速入門 文末還有升級版
- 增加swagger的支持
- main方法中增加註釋字段
public static void main(String[] args) {
genCodeByCustomModelName("t_user_info", "TUserInfo", "用戶信息");
}
- 增加模塊字段
public static final String MODEL_PACKAGE = ".user";// 模塊名稱,可不填