mirror of
https://gitee.com/mybatis-flex/mybatis-flex.git
synced 2025-12-07 09:08:24 +08:00
feat: apt新增processor.mapper.annotation配置是否生成@Mapper注解
This commit is contained in:
parent
98cc384809
commit
549e3e42ab
@ -121,6 +121,7 @@ public class MybatisFlexProcessor extends AbstractProcessor {
|
|||||||
|
|
||||||
// mapper 配置
|
// mapper 配置
|
||||||
String mapperGenerateEnable = configuration.get(ConfigurationKey.MAPPER_GENERATE_ENABLE);
|
String mapperGenerateEnable = configuration.get(ConfigurationKey.MAPPER_GENERATE_ENABLE);
|
||||||
|
String mapperAnnotation = configuration.get(ConfigurationKey.MAPPER_ANNOTATION);
|
||||||
String mapperPackage = configuration.get(ConfigurationKey.MAPPER_PACKAGE);
|
String mapperPackage = configuration.get(ConfigurationKey.MAPPER_PACKAGE);
|
||||||
String mapperBaseClass = configuration.get(ConfigurationKey.MAPPER_BASE_CLASS);
|
String mapperBaseClass = configuration.get(ConfigurationKey.MAPPER_BASE_CLASS);
|
||||||
|
|
||||||
@ -191,7 +192,8 @@ public class MybatisFlexProcessor extends AbstractProcessor {
|
|||||||
if ("true".equalsIgnoreCase(mapperGenerateEnable) && table.mapperGenerateEnable()) {
|
if ("true".equalsIgnoreCase(mapperGenerateEnable) && table.mapperGenerateEnable()) {
|
||||||
String realMapperPackage = StrUtil.isBlank(mapperPackage) ? StrUtil.buildMapperPackage(entityClass) : mapperPackage;
|
String realMapperPackage = StrUtil.isBlank(mapperPackage) ? StrUtil.buildMapperPackage(entityClass) : mapperPackage;
|
||||||
String mapperClassName = entityClassName.concat("Mapper");
|
String mapperClassName = entityClassName.concat("Mapper");
|
||||||
String mapperClassContent = ContentBuilder.buildMapper(entityClass, entityClassName, realMapperPackage, mapperClassName, mapperBaseClass);
|
boolean mapperAnnotationEnable = "true".equalsIgnoreCase(mapperAnnotation);
|
||||||
|
String mapperClassContent = ContentBuilder.buildMapper(entityClass, entityClassName, realMapperPackage, mapperClassName, mapperBaseClass, mapperAnnotationEnable);
|
||||||
processGenClass(genPath, realMapperPackage, mapperClassName, mapperClassContent);
|
processGenClass(genPath, realMapperPackage, mapperClassName, mapperClassContent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -40,11 +40,19 @@ public class ContentBuilder {
|
|||||||
* 构建 Mapper 文件内容。
|
* 构建 Mapper 文件内容。
|
||||||
*/
|
*/
|
||||||
public static String buildMapper(String entityClass, String entityClassName,
|
public static String buildMapper(String entityClass, String entityClassName,
|
||||||
String mappersPackage, String mapperClassName, String baseMapperClass) {
|
String mappersPackage, String mapperClassName, String baseMapperClass, boolean mapperAnnotationEnable) {
|
||||||
StringBuilder content = new StringBuilder("package ");
|
StringBuilder content = new StringBuilder("package ");
|
||||||
content.append(mappersPackage).append(";\n\n");
|
content.append(mappersPackage).append(";\n\n");
|
||||||
|
content.append(mapperAnnotationEnable ? "" : "");
|
||||||
|
if (mapperAnnotationEnable) {
|
||||||
|
content.append("import org.apache.ibatis.annotations.Mapper;\n");
|
||||||
content.append("import ").append(baseMapperClass).append(";\n");
|
content.append("import ").append(baseMapperClass).append(";\n");
|
||||||
content.append("import ").append(entityClass).append(";\n\n");
|
content.append("import ").append(entityClass).append(";\n\n");
|
||||||
|
content.append("@Mapper\n");
|
||||||
|
} else {
|
||||||
|
content.append("import ").append(baseMapperClass).append(";\n");
|
||||||
|
content.append("import ").append(entityClass).append(";\n\n");
|
||||||
|
}
|
||||||
String realEntityClassName = StrUtil.getClassName(entityClass);
|
String realEntityClassName = StrUtil.getClassName(entityClass);
|
||||||
String baseMapperClassName = StrUtil.getClassName(baseMapperClass);
|
String baseMapperClassName = StrUtil.getClassName(baseMapperClass);
|
||||||
content.append("public interface ").append(mapperClassName).append(" extends ").append(baseMapperClassName).append("<").append(realEntityClassName).append("> {\n}");
|
content.append("public interface ").append(mapperClassName).append(" extends ").append(baseMapperClassName).append("<").append(realEntityClassName).append("> {\n}");
|
||||||
|
|||||||
@ -56,6 +56,11 @@ public enum ConfigurationKey {
|
|||||||
*/
|
*/
|
||||||
MAPPER_GENERATE_ENABLE("processor.mapper.generateEnable", "false"),
|
MAPPER_GENERATE_ENABLE("processor.mapper.generateEnable", "false"),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 开启 @Mapper 注解。
|
||||||
|
*/
|
||||||
|
MAPPER_ANNOTATION("processor.mapper.annotation", "false"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 自定义 Mapper 的父类。
|
* 自定义 Mapper 的父类。
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
processor.mapper.generateEnable=true
|
processor.mapper.generateEnable=true
|
||||||
|
processor.mapper.annotation=true
|
||||||
processor.tableDef.ignoreEntitySuffixes=Entity
|
processor.tableDef.ignoreEntitySuffixes=Entity
|
||||||
#processor.allInTables.enable=true
|
#processor.allInTables.enable=true
|
||||||
processor.mapper.baseClass=com.mybatisflex.test.mapper.MyBaseMapper
|
processor.mapper.baseClass=com.mybatisflex.test.mapper.MyBaseMapper
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user