cn.tenfell.plugins.dbgenerate.component.DbGenerateRegistrar Maven / Gradle / Ivy
package cn.tenfell.plugins.dbgenerate.component;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import cn.tenfell.plugins.dbgenerate.annotation.EnableDbGenerate;
import cn.tenfell.plugins.dbgenerate.utils.DocUtils;
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
import org.springframework.core.annotation.AnnotationAttributes;
import org.springframework.core.type.AnnotationMetadata;
import java.util.HashSet;
/**
* 数据库生成注册器
* @author fs
*/
public class DbGenerateRegistrar implements ImportBeanDefinitionRegistrar {
@Override
public void registerBeanDefinitions(AnnotationMetadata annotationMetadata, BeanDefinitionRegistry registry) {
AnnotationAttributes annotationAttributes = AnnotationAttributes.fromMap(annotationMetadata.getAnnotationAttributes(EnableDbGenerate.class.getName()));
String[] packages = (String[])annotationAttributes.get("beanPackages");
String password = (String)annotationAttributes.get("password");
if(packages != null && packages.length>0){
if(DocUtils.dbGenerateProperties.getBeanPackages() == null){
DocUtils.dbGenerateProperties.setBeanPackages(new HashSet());
}
DocUtils.dbGenerateProperties.getBeanPackages().addAll(CollUtil.toList(packages));
}
if(StrUtil.isNotBlank(password)){
DocUtils.dbGenerateProperties.setPassword(password);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy