Spring mvc注解用到的配置:

<!-- 启用spring mvc 注解 -->
<context:annotation-config />  <context:component-scan base-package="cn.itkt"></context:component-scan>  

这样的话,在com包及其所有子包下的所有类如果含有@Component、@Controller、@Service、@Repository等注解的 话都会自动纳入到Spring容器中,但是每个类都一个个加上注解,有时难免觉得繁琐,其实Spring也为我们提供了自动为类加上注解的功能。配置如 下:

<!-- 启用spring mvc 注解 --><context:annotation-config /><!-- 设置使用注解的类所在的包 --><context:component-scan base-package="com.lmb.**.rest,com.lmb..server.http,com.lmb.**.mvc"><context:include-filter type="annotation"expression="org.springframework.stereotype.Controller" /><context:exclude-filter type="annotation"expression="org.springframework.stereotype.Service" /></context:component-scan>

com.lmb..rest,com.lmb.hollyuniproxy.server.http,com.lmb..mvc包下的类都为使用注解的类。

要特别注意其中的context:include-filter标签和context:exclude-filter标签:
context:include-filter
此标签的含义是:在其扫描到的所有包下的类,全部自动加上注解并纳入Spring容器中。
比如下面这个类:

public class InterfaceVisitService implements IInterfaceVisitService  {
//……
} 

那么该标签等于为InterfaceVisitService 类加上@Component注解,且bean的id为interfaceVisitService。

@Component(“interfaceVisitService”)
public class InterfaceVisitService implements IInterfaceVisitService  {
//……
} 

context:exclude-filter
此标签的含义是:排除扫描到的所有类,不纳入Spring容器中。
但需要注意的是,采用自动注入,类名不能相同(即便包名不同),因为自动注入时,id与类名相同,所以如果两个类名一样的话,会因为Bean的id相同而报错。如果类名一定要相同的话,只能是其中一个类,手动加上注解并将名称改为其他。

【Spring学习】spring注解自动注入bean相关推荐

  1. spring学习笔记四(注入Bean属性)

      注入Bean属性 初始化bean的时候我们可能要对生成的Bean对象进行一些初始属性的设置,那么在spring中是如何设置的呢? 我们以下面图中实例来为Bean注入属性 一.通过构造方法来注入属性 ...

  2. (转)Spring Boot通过ImportBeanDefinitionRegistrar动态注入Bean

    转自: Spring Boot通过ImportBeanDefinitionRegistrar动态注入Bean - 掘金在阅读SpringBoot源码时,看到SpringBoot中大量使用ImportB ...

  3. spring学习笔记03-spring-DI-依赖注入详解(通过xml配置文件来配置依赖注入)

    spring学习笔记03-spring-DI-依赖注入详解 1.概念 2.构造函数注入 3.set方法注入 4.集合的注入 需要被注入的实体对象 package com.itheima.service ...

  4. Spring框架最终注解标签注入方法

    使用注解装配bean 使用@Autowired注解 从Spring2.5开始,最有趣的一种装配Spring Bean的方式是使用注解自动装配Bean的属性. Spring默认禁用注解装配,最简单的启用 ...

  5. 使用@atuowired注解无法注入bean的解决方法(出现Field userMapper in com.peng.service.Impl.UserServiceImpl required a b

    使用@atuowired注解无法注入bean的解决方法(出现Field userMapper in com.peng.service.Impl.UserServiceImpl required a b ...

  6. 解决Spring+Quartz无法自动注入bean问题

    问题 我们有时需要执行一些定时任务(如数据批处理),比较常用的技术框架有Spring + Quartz中.无奈此方式有个问题:Spring Bean无法自动注入. 环境:Spring3.2.2 + Q ...

  7. Spring三种方法的注解自动注入

    1 @Autowired注解 @Autowired是Spring提供的自动注入的方法,该注解可以放在变量和方法上,在bean+返回值类型的注解中,@Autowired还可以放在参数前:@Autowir ...

  8. spring注解方式注入bean

    用注解的方式注入bean,spring的配置文件也要增加一些约束和导入注解所在的包 applicationContext.xml 1 <?xml version="1.0" ...

  9. Spring学习7之自动装配Bean03

    前言 接上节我们学习隐式的自动装配bean,今天我们学习用Java方式来配置bean! 一.如何用Java实现配置Bean 我们需要使用JavaConfig,一个配置类! 二.使用步骤 1.需要的实体 ...

最新文章

  1. 全国大学生智能汽车竞赛-讯飞赛道开始报名啦!
  2. Android开始之 Spinner控件
  3. golang 开发 Struct 转换成 map 两种方式比较
  4. Linux线程(三)
  5. mysql-bin日志文件清理
  6. 飞机大战游戏微信小程序源码
  7. 软件工程 | 第七章 系统维护
  8. 《宏命令完全指南》8.0最新修改篇
  9. kettle 配置jndi数据源
  10. JS引擎V8的内存回收机制与内存限制(标记清除法)
  11. verilog赋多位值_verilog中的default应该赋什么样的值
  12. 5、SpringMVC自动配置概览
  13. 一款全新的平面UI套件,专门用于桌面应用程序
  14. 【学习笔记】【正则表达式】`A-Za-z`和`A-z`的区别,前者更精准,后者包括部分字符。
  15. CS5266替代AG9311设计TYPEC转HDMI带PD3.0音视频拓展坞方案
  16. 完美解决nginx跨域问题Request header field x-token is not allowed by Access-Control-Allow-Headers in prefligh
  17. 百度地图(BMap)设置标点,显示信息【vue】
  18. 提示虚拟内存不足可能的原因以及该怎么处理
  19. mysql 主键长度_MYSQLl数据库主键设置长度控制
  20. 那些年,IE浏览器带给我们的快乐和感动

热门文章

  1. 绘画 某种字体 以某种折行规则 最后画出的text有多大
  2. Android 顶部切换实现(二)
  3. android 判断手机为小米
  4. android list contain的使用
  5. android系统sharedUserId: SYSTEM_UID+PHONE_UID+BLUETOOH_UID+LOG_UID+NFC_UID
  6. 从Activity返回结果
  7. OpenCV cv2.putText实现字符串换行'\n'
  8. 解决devenv.exe应用程序错误,应用程序发生异常
  9. Vue—相关工具—webpack
  10. Android开发之IPC进程间通信-AIDL介绍及实例解析