实用又好用Mybatis-Plus版的EasyCode模板

- 日理万妓 2024-02-17 11:13 91阅读 0赞

e64203b27d5d4618b4c2ba4349001785.png

1:插件下载

4960d2c105834201a203d91e6b6df3e4.pngPlugins中搜索EasyCode,并且下载安装

2:模板编写

2.1:entity.vm.java模板

  1. ##引入宏定义
  2. $!{define.vm}
  3. ##使用宏定义设置回调(保存位置与文件后缀)
  4. #save("/entity", "DO.java")
  5. ##使用宏定义设置包后缀
  6. #setPackageSuffix("entity")
  7. ##使用全局变量实现默认包导入
  8. $!{autoImport.vm}
  9. import java.io.Serializable;
  10. import com.baomidou.mybatisplus.annotation.TableField;
  11. import com.baomidou.mybatisplus.annotation.TableId;
  12. import com.baomidou.mybatisplus.annotation.TableName;
  13. import io.swagger.annotations.ApiModel;
  14. import io.swagger.annotations.ApiModelProperty;
  15. import lombok.Data;
  16. import lombok.EqualsAndHashCode;
  17. import lombok.experimental.Accessors;
  18. import lombok.Getter;
  19. import lombok.Setter;
  20. import com.baomidou.mybatisplus.extension.activerecord.Model;
  21. ##使用宏定义实现类注释信息
  22. #tableComment("实体类")
  23. @Data
  24. @EqualsAndHashCode(callSuper = false)
  25. @TableName("$!{tool.hump2Underline($!{tableInfo.name})}")
  26. @ApiModel(value = "$!{tableInfo.name}", description = "$tableInfo.comment")
  27. public class $!{tableInfo.name}DO implements Serializable {
  28. private static final long serialVersionUID = $!tool.serial();
  29. #foreach($column in $tableInfo.fullColumn)
  30. #if(${column.comment})
  31. /**
  32. * ${column.comment}
  33. */#end
  34. @ApiModelProperty(value = "${column.comment}")
  35. @TableField("$!{tool.hump2Underline($!{column.name})}")
  36. private $!{tool.getClsNameByFullName($column.type)} $!{column.name};
  37. #end
  38. }

2.2:dto.vm.java模板

  1. ##引入宏定义
  2. $!{define.vm}
  3. ##使用宏定义设置回调(保存位置与文件后缀)
  4. #save("/dto", "DTO.java")
  5. ##使用宏定义设置包后缀
  6. #setPackageSuffix("dto")
  7. ##使用全局变量实现默认包导入
  8. $!{autoImport.vm}
  9. import java.io.Serializable;
  10. import lombok.Data;
  11. ##使用宏定义实现类注释信息
  12. #tableComment("实体类")
  13. @Data
  14. public class $!{tableInfo.name}DTO implements Serializable {
  15. private static final long serialVersionUID = $!tool.serial();
  16. #foreach($column in $tableInfo.fullColumn)
  17. #if(${column.comment})
  18. /**
  19. * ${column.comment}
  20. */#end
  21. private $!{tool.getClsNameByFullName($column.type)} $!{column.name};
  22. #end
  23. }

2.3: service.vm.java

  1. ##导入宏定义
  2. $!{define.vm}
  3. ##设置表后缀(宏定义)
  4. #setTableSuffix("Service")
  5. ##保存文件(宏定义)
  6. #save("/service", "Service.java")
  7. ##包路径(宏定义)
  8. #setPackageSuffix("service")
  9. import com.baomidou.mybatisplus.extension.service.IService;
  10. import $!{tableInfo.savePackageName}.entity.$!{tableInfo.name}DO;
  11. import cn.hsa.hsaf.core.framework.web.WrapperResponse;
  12. import java.util.Map;
  13. ##拿到主键
  14. #if(!$tableInfo.pkColumn.isEmpty())
  15. #set($pk = $tableInfo.pkColumn.get(0))
  16. #end
  17. /**
  18. * $!{tableInfo.comment}($!{tableInfo.name})表Service
  19. *
  20. * @author $!author
  21. * @since $!time.currTime()
  22. */
  23. public interface $!{tableName} extends IService<$!{tableInfo.name}DO> {
  24. /**
  25. * 查询$!{tableInfo.name}数据
  26. *
  27. * @author $!author
  28. */
  29. WrapperResponse<String, Object> query$!{tableInfo.name} ($!{tableInfo.name}DTO $!tool.firstLowerCase($!{tableInfo.name})DTO) throws Exception;
  30. /**
  31. * 新增$!{tableInfo.name}数据
  32. *
  33. * @author $!author
  34. */
  35. WrapperResponse<String, Object> insert$!{tableInfo.name} ($!{tableInfo.name}DTO $!tool.firstLowerCase($!{tableInfo.name})DTO) throws Exception;
  36. /**
  37. * 修改$!{tableInfo.name}数据
  38. *
  39. * @author $!author
  40. */
  41. WrapperResponse<String, Object> update$!{tableInfo.name} ($!{tableInfo.name}DTO $!tool.firstLowerCase($!{tableInfo.name})DTO) throws Exception;
  42. /**
  43. *删除$!{tableInfo.name}数据
  44. *
  45. * @author $!author
  46. */
  47. WrapperResponse<String, Object> delete$!{tableInfo.name} ($!{tableInfo.name}DTO $!tool.firstLowerCase($!{tableInfo.name})DTO) throws Exception;
  48. }

2.4: serviceimpl.vm.java

  1. ##导入宏定义
  2. $!{define.vm}
  3. ##设置表后缀(宏定义)
  4. #setTableSuffix("ServiceImpl")
  5. ##保存文件(宏定义)
  6. #save("/service/impl", "ServiceImpl.java")
  7. ##包路径(宏定义)
  8. #setPackageSuffix("service.impl")
  9. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  10. import $!{tableInfo.savePackageName}.dao.$!{tableInfo.name}Dao;
  11. import $!{tableInfo.savePackageName}.entity.$!{tableInfo.name}DO;
  12. import $!{tableInfo.savePackageName}.service.$!{tableInfo.name}Service;
  13. import org.springframework.stereotype.Service;
  14. ##表注释(宏定义)
  15. #tableComment("表服务实现类")
  16. @Service("$!tool.firstLowerCase($tableInfo.name)Service")
  17. public class $!{tableName} extends ServiceImpl<$!{tableInfo.name}Dao, $!{tableInfo.name}DO> implements $!{tableInfo.name}Service {
  18. }

2.5dao.vm.java

  1. ##导入宏定义
  2. $!{define.vm}
  3. ##设置表后缀(宏定义)
  4. #setTableSuffix("Dao")
  5. ##保存文件(宏定义)
  6. #save("/dao", "Dao.java")
  7. ##包路径(宏定义)
  8. #setPackageSuffix("dao")
  9. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  10. import $!{tableInfo.savePackageName}.entity.$!{tableInfo.name}DO;
  11. ##表注释(宏定义)
  12. #tableComment("表数据库访问层")
  13. public interface $!{tableName} extends BaseMapper<$!{tableInfo.name}DO> {
  14. }

3:导入模板

模板编写完之后,进行模板导入

settings—》other settings—》EasyCode—》Template—-》点击Group Name后边的+号添加自己的板块,也可以选择默认—-》

262cf11843f44fdc831c042925fd70ab.png

然后点击下边的加号+添加模板

058a16f721284c1e937da83a415e4ea5.png

将对应模板贴入,点击应用

edb79567123a4ca5a251b871a6d8a415.png

4:引入数据库

f965da4ed87d4d668ea93eb6bd475d86.png

填入信息(ip,port,账号、密码)进行测试链接

6adb0d5f6c9248f483acfe66f737c8ec.png 可能会遇到一个问题就是,明明navicat可以连接数据库,但是idea却链接不上:

解决:在启动类启动项配置VM option,加上:

  1. -Djava.net.preferIPv4Stack=true

并且在help—>edit custom Vm options

d9fcd10402b7435f97291add82f23f80.png

链接上点击旁边的97db09c44e6d4eab907e7ba283eada76.png会显示数据库信息,如果没显示就refrush一下6969aaec2e2e40479f38fb08929b0343.png

然后选择你需要生成代码的数据库跟表

6f78dc255fc24f338de46f7dcb0a88e4.png

5:自动生成代码

b096005851174e70997aad04af5cb85d.png

选择你刚刚导入的模板就行,可以多选,一次性生成多个,可以选择你想要生成在那个包下边,不选默认生成主目录下边

没选b1412266159a4313a430b1602e2d79bd.png选了7f3e1d9364a44f489f0f442333712e36.png

f277be377f744d20996e45d584531cb0.png

发表评论

表情:
评论列表 (有 0 条评论,91人围观)

还没有评论,来说两句吧...

相关阅读