三步構建SpringBoot對單表的增刪改查

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";// 模塊名稱,可不填
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章