springboot启动类如何剔除扫描某个包
启动类剔除扫描某个包
排除api中不引数据库导致的报错包
@ComponentScan(excludeFilters = { @ComponentScan.Filter(type = FilterType.REGEX,pattern = "com.integration.aop.log.service.*") })
通过该注解配置,可以实现剔除某个包,让Spring不自动扫描该包下的内容。
适用于依赖api或者其他包时,一些不必要或不支持的对象被扫描到,引发的报错或内存占用等问题。通过该配置可以去掉这些不必要的扫描。
使用正则表达式排除包扫描
// com.jiaobuchong.business 和 com.jiaobuchong.user.servic 下的类都不会被扫描 @ComponentScan(basePackages = {"com.jiaobuchong.order.service"}, excludeFilters = {@ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.jiaobuchong.business\\..*"), @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.jiaobuchong.user.service\\..*")})
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
springboot多模块包扫描问题的解决方法
问题描述: springboot建立多个模块,当一个模块需要使用另一个模块的服务时,需要注入另一个模块的组件,如下面图中例子: memberservice模块中的MemberServiceApiImpl类需要注入common模块中的RedisService组件,该怎么注入呢? 解决: 在memberservice模块的启动类上加上RedisService类所在包的全路径的组件扫描,就像这样: 注意启动类上方的注解@ComponentScan(basePackages={"com.whu.comm
-
基于spring boot排除扫描类的三种方式小结
最近在做单测的时候,由于自己配置的spring boot容器会默认扫描很多不想被加载,网上中文的文章并不多,所以来总结一下. 默认下面描述的类都在一个包下面 第一步我们新建一个应用启动的类,一个类用来充当Configuration,为了能明显的感知到其到底有没生效,我编写如下: @SpringBootApplication public class Test { public static void main(String[] args) { new SpringApplication(Test
-
详解SpringBoot启动类的扫描注解的用法及冲突原则
背景 SpringBoot 启动类上,配置扫描包路径有三种方式,最近看到一个应用上三种注解都用上了,代码如下: @SpringBootApplication(scanBasePackages ={"a","b"}) @ComponentScan(basePackages = {"a","b","c"}) @MapperScan({"XXX"}) public class XXApplic
-
springboot启动类如何剔除扫描某个包
启动类剔除扫描某个包 排除api中不引数据库导致的报错包 @ComponentScan(excludeFilters = { @ComponentScan.Filter(type = FilterType.REGEX,pattern = "com.integration.aop.log.service.*") }) 通过该注解配置,可以实现剔除某个包,让Spring不自动扫描该包下的内容. 适用于依赖api或者其他包时,一些不必要或不支持的对象被扫描到,引发的报错或内存占用等问题.通过
-
SpringBoot启动类@SpringBootApplication注解背后的秘密
在用SpringBoot的项目的时候,会发现不管干什么都离不开启动类,他是程序唯一的入口,那么他究竟为我们做了什么?本篇文章主要解析@SpringBootApplication. 一.启动类 @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); } } 二.@SpringBoo
-
基于SpringBoot启动类静态资源路径问题
目录 SpringBoot启动类静态资源路径 SpringBoot核心配置类 分别是一下四个静态资源路径 静态文件存放位置设置 默认配置 自定义位置 SpringBoot启动类静态资源路径 SpringBoot核心配置类 SpringBoot核心JAR包-->spring-boot-autoconfigure-2.2.6.RELEASE.jar 其下面有-->org.springframework.boot.autoconfigure.web 其中有类-->ResourcePropert
-
SpringBoot为啥不用配置启动类的实现
前言 在学习SparkJava.Vert.x等轻量级Web框架的时候,都遇到过打包问题,这两个框架打包的时候都需要添加额外的Maven配置,并指定启动类才能得到可执行的JAR包: 而springboot项目,似乎都不需要额外的配置,直接package就可以得到可执行的JAR包,这是怎么回事呢? Vert.x要怎么配? 我们先来看看,Vert.x打包做哪些配置 1)引入maven-shade-plugin插件 2)在插件中指定在package完成时触发shade操作 3)指定启动类 <plugin
-
SpringBoot启动及自动装配原理过程详解
一.servlet2(老spring-mvc) 配置文件: web.xml:主要配置项目启动项 application-context.xml:主要配置项目包扫描.各种bean.事务管理 springMVC.xml:主要配置controller包扫描.视图解析器.参数解析器 启动过程: 每一个spring项目启动时都需要初始化spring-context,对于非web项目可以在程序main方法中触发这个context的初始化过程. 由于web项目的启动入口在容器,所以开发者不能直接触发sprin
-
传统tomcat启动服务与springboot启动内置tomcat服务的区别(推荐)
spring整合springmvc spring整合springmvc中web.xml配置如下,tomcat在启动过程中会加载web.xml中的内容,ContextLoaderListener实现了tomcat里面的ServletContextListener接口,所以在tomcat容器启动过程通过ContextLoaderListener来进行spring容器的初始化操作,并将classpath:spring/applicationContext-*.xml指定下的spring配置文件加载,该
-
SpringBoot入口类和@SpringBootApplication讲解
目录 入口类和@SpringBootApplication @ComponentScan相关使用 @EnableAutoConfiguration 关闭自动配置 为什么是SpringBoot SpringBoot主程序类,主入口类 主程序类,主入口类 入口类和@SpringBootApplication SpringBoot项目创建完成之后默认会生成一个*Application的入口类,通过该类的main方法即可启动SpringBoot项目. @SpringBootApplication(exc
-
springboot启动扫描不到dao层接口的解决方案
今天启动springboot项目时失败了 解决 检查原因发现是启动类的MapperScan("")的值写到类名了,改成类所在的包名错误就修复了. springboot 扫描不到dao层和controller 一.提示 A component required a bean of type 'com.imooc2.product.category.dao.ProductCategoryDao' that could not be found即dao层找不到了 解决:使用@MapperSc
-
SpringBoot启动多数据源找不到合适的驱动类问题
目录 启动多数据源找不到合适的驱动类 问题 这两个jar包放在一起就找不到合数的驱动加载了 启动springboot提示驱动异常 Failed to determine a suitable driver class 在pom.xml中的build标签中添加如下代码 启动多数据源找不到合适的驱动类 问题 我项目中使用了SpringBoot多数据源,但是mysql有使用阿里的Druid连接池. <!--主从配置依赖--> <dependency> <groupId>com
随机推荐
- javascript事件函数中获得事件源的两种不错方法
- [Asp.Net MVC4]验证用户登录实现实例
- javascript实现动态侧边栏代码
- 详谈ES6中的迭代器(Iterator)和生成器(Generator)
- 深入理解javascript的执行顺序
- python操作MySQL 模拟简单银行转账操作
- js金额数字格式化实现代码(加减逗号处理)
- JavaScript替换当前页面的方法
- ruby实现修改ubuntu下的hosts
- jQuery老黄历完整实现方法
- Bootstrap Table使用整理(二)
- javascript实现的listview效果
- 完全重新安装IIS
- JS闭包与延迟求值用法示例
- 详解java中的PropertyChangeSupport与PropertyChangeListener
- Android签名机制介绍:生成keystore、签名、查看签名信息等方法
- Mybatis的详细使用教程
- JS 实现 ajax 异步浏览器兼容问题
- python数据封装json格式数据
- java&javascript自定义加密数据传输代码示例