spring 类扫描功能使用

简介: spring 类扫描功能使用

1.支持扫描某个包下的所有类,进行处理。

private static final String MSG_PATH = "com.test.msg.http";
private static final String RESOURCE_PATH = "classpath*:" + StringUtils.replace(MSG_PATH, ".", "/") + "/*.class";
private Map<String, String> funMap = new HashMap<String, String>();
public void init() throws ServiceException {
logger.info("注册消息初始化开始");
ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver();
try {
Resource[] resources = resourcePatternResolver.getResources(RESOURCE_PATH);
MetadataReaderFactory metadataReaderFactory = new CachingMetadataReaderFactory(resourcePatternResolver);
for (Resource e : resources) {
MetadataReader metadataReader = metadataReaderFactory.getMetadataReader(e);
String clazzName = ClassUtils.getClass(metadataReader.getClassMetadata().getClassName()).getSimpleName();;
if (StringUtils.endsWith(clazzName, "C2S_Msg")) {
String funcName = StringUtils.uncapitalize(StringUtils.substringBefore(clazzName, "_"));
funMap.put(clazzName, funcName);
}
}
} catch (Exception e) {
throw new ServiceException(e);
}
logger.info("注册消息初始化完毕");
}
public String getFuncName(Object msg) {
    return funMap.get(msg.getClass().getSimpleName());
  }










目录
相关文章
|
4天前
|
XML 存储 Java
Spring重要类解析
Spring重要类解析
25 0
|
4天前
|
存储 XML 缓存
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache功能的开发实战指南(一)
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache功能的开发实战指南
117 0
|
4天前
|
开发框架 监控 Java
深入探索Spring Boot的监控、管理和测试功能及实战应用
【5月更文挑战第14天】Spring Boot是一个快速开发框架,提供了一系列的功能模块,包括监控、管理和测试等。本文将深入探讨Spring Boot中监控、管理和测试功能的原理与应用,并提供实际应用场景的示例。
16 2
|
4天前
|
XML 存储 缓存
Spring缓存是如何实现的?如何扩展使其支持过期删除功能?
总之,Spring的缓存抽象提供了一种方便的方式来实现缓存功能,并且可以与各种缓存提供商集成以支持不同的过期策略。您可以根据项目的具体需求选择适合的方式来配置和扩展Spring缓存功能。
19 0
|
4天前
|
消息中间件 安全 Java
在Spring Bean中,如何通过Java配置类定义Bean?
【4月更文挑战第30天】在Spring Bean中,如何通过Java配置类定义Bean?
21 1
|
4天前
|
Java API 数据安全/隐私保护
【亮剑】如何在Java项目中结合Spring框架实现邮件发送功能
【4月更文挑战第30天】本文介绍了如何在Java项目中结合Spring框架实现邮件发送功能。首先,需在`pom.xml`添加Spring和JavaMail依赖。然后,在`applicationContext.xml`配置邮件发送器,包括SMTP服务器信息。接着,创建一个使用依赖注入的`EmailService`类,通过`JavaMailSender`发送邮件。最后,调用`EmailService`的`sendSimpleEmail`方法即可发送邮件。最佳实践包括:使用配置管理敏感信息,利用`MimeMessage`构造复杂邮件,异常处理和日志记录,以及在大量发送时考虑使用邮件队列。
|
4天前
|
安全 Java 测试技术
Spring Boot 自动化单元测试类的编写过程
企业开发不仅要保障业务层与数据层的功能安全有效,也要保障表现层的功能正常。但是我们一般对表现层的测试都是通过postman手工测试的,并没有在打包过程中代码体现表现层功能被测试通过。那么能否在测试用例中对表现层进行功能测试呢?答案是可以的,我们可以使用MockMvc来实现它。
51 0
|
4天前
|
前端开发 Java Spring
Spring Framework五大功能模块
Spring Framework五大功能模块
|
4天前
|
Java 容器
SpringBoot使用配置注解开启自动配置功能&整合spring-boot-configuration-processor
SpringBoot使用配置注解开启自动配置功能&整合spring-boot-configuration-processor
19 0
|
4天前
|
缓存 NoSQL Java
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache功能的开发实战指南(二)
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache功能的开发实战指南
41 0