个人知识碎片的体系化理解与整理,缓慢更新,理解不到位与错漏之处望见谅与指正。
day01摘要思想:Spring Boot的项目文件夹结构属于长期沉淀下的一种人为解耦规范,对规范化与多人协作开发具有较大意义,此处大致整理工作中长期使用的一种规范。
开发环境:Intellij IDEA 2017.2.6
1.Mybatis plus
pom.xml:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
application-dev.yml:
mybatis-plus:
mapper-locations: classpath:mapper/**/*.xml
type-aliases-package: com.dream.summer.air.*.entity
global-config:
db-config:
id-type: id_worker
2.EasyCode:代码生成器
安装与使用:
具体配置细节暂时略过; 最终效果为直接生成已统一配置格式的6层文件,具体内容见下
3.Entity:数据库表对应实体类层
表设计:
对应生成的Entity实体类:
@TableName:指定表名称
@Data:lombok所提供注解,加入后该实体类将自动拥有对字段的get/set方法、toString方法、hashCode方法与equals方法
@Accessors:lombok所提供注解,使用其chain属性则setter方法将直接返回当前对象
@NoArgsConstructor:默认提供无参数构造方法注解
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss"):时间格式化注解
其余常用注解待补充...
package com.dream.summer.air.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 用户表(AirNoter)表实体类
*
* @author makejava
* @since 2020-09-01 11:46:58
*/
@TableName("air_noter")
@Data
@Accessors(chain = true)
@NoArgsConstructor
public class AirNoter {
//用户ID
private Long id;
//登陆账号
private String userName;
//昵称