自定义GenerateMysqlEntity类
单例模式:
入口:
generate方法下面讲
数据库信息:
DataBaseUtils
用到的静态数据:
生成实体类文件:
生成class的所有内容:
StringBuffer类
构造一个没有字符的字符串缓冲区,初始容量为16个字符
CommonUtils.getTransStr
getKeyStringList
生成Key列表(数据库表的字段列表)
生成效果:
getKeyLabelList
生成key对应的注释
生成效果:
processAllAttrs
生成所有成员变量
生成效果:
sqlType2JavaType
查找sql字段类型所对应的Java类型
总结步骤:
-
获取表信息。(利用DataBaseUtils)
-
获取根目录路径。(File类)
-
返回packageOutPath(com.api.johnzeng.Entity)的绝对路径。
-
生成packageOutPath(com.api.johnzeng.Entity)的file实例。
-
生成packageOutPath(com.api.johnzeng.Entity)目录。
-
遍历tableInfoList。
- 生成文件内容。
- 利用FileWriter,PrintWriter,将内容写入,输出到Entity(com.api.johnzeng.Entity)目录
实体类的使用:
配置MyBatisPlugsConfig
创建mapper
将mapper放到Mapper目录下,MapperScan才会扫描到
service层使用
- 使用@Autowired注入mapper
- 初始化单例的QueryWrapper类
- 使用方法参考maybatis plus文档