spring的bean不能注入的几种原因及分析
1、异常信息
2.有可能引起的原因:
1、在applicationContext.xml的配置文件里的包扫描不对。
2、在web.xml里没有加载spring容器。
3、分布式工程,使用dubbo或者hsf通信,在服务层,或者消费层,单词写错了。
4、还有一种可能,有可能是pom 里的jar包冲突。
5、从ApplicationContext 获取bean的时候getBean传的参数与配置的bean的id不一致导致无法取到,建议bean的id与接口名保持一致,不要添加或去除字母:
public static RedisUtilService getRedisUtilService() {// 此处应为redisUtilreturn (RedisUtilService)getApplicationContext().getBean("redisUtilService");}
<hsf:consumer id="redisUtil" interface="com.asiainfo.retail.service.util.RedisUtilService"version="${version}" group="${moon}"></hsf:consumer>
6、web.xml的加载顺序与它们在 web.xml 文件中的先后顺序无关。不会因为 filter 写在 listener 的前面而会先加载 filter。加载顺序依次为:listener -> filter -> servlet,所以在filter中是无法使用@autowire注解注入bean的,需要我们手动加载,在过滤器中使用service是需要手动注入的。代码如下:
private static ApplicationContext getApplicationContext() {ApplicationContext ac = null;try {ac = new ClassPathXmlApplicationContext("applicationContext.xml");} catch (Exception e) {e.printStackTrace();}return ac;
}public static StaffInfoService getStaffInfoService() {return (StaffInfoService)getApplicationContext().getBean("staffInfoService");
}
spring的bean不能注入的几种原因及分析相关推荐
- Bean依赖注入的3种数据类型
Bean依赖注入有3种类型,分别是普通数据类型.集合和引用数据类型. 在这里我主要用的set依赖注入方法 1.普通数据类型 public class Book{private String bid;p ...
- 05.bean依赖注入的三种方式
05.bean依赖注入的三种方式 1.概述 依赖注入 DI(Dependency Injection):它是 Spring 框架核心 IOC 的具体实现. 在编写程序时,通过控制反转,把对象的创建交给 ...
- Spring系列之依赖注入的三种方式
目录 一.依赖注入方式 1.使用属性的setXXX方法注入 2.构造函数注入 (1)按类型匹配入参type (2)按索引匹配入参index (3)联合使用类型和索引匹配入参[type和index一起使 ...
- spring学习之将类交给spring管理,bean的注入,scope,集合注入,自动装配,生命周期,迟加载
一.将类交给spring管理(IOC) 1.将类交给spring容器管理 如何将一个类交给spring容器进行管理呢? 方法很简单,只需要在applicationContext.xml中加入对应的xm ...
- 【Spring】Spring的IOC依赖注入的四种方式
作者简介:大家好,我是五度鱼,一个普通的Java领域博主,不停输出Java技术博客和干货. 座右铭:锲而不舍,金石可镂. 个人主页:五度鱼学Java的主页 文章目录 前言 1. set注入 2. 构造 ...
- Spring中bean的注入方式
平常的Java开发中,程序员在某个类中需要依赖其它类的方法. 通常是new一个依赖类的实例再调用该实例的方法,这种开发存在的问题是new的类实例不好统一管理. Spring提出了依赖注入的思想,即依赖 ...
- Spring IOC (DI) 依赖注入的四种方式
依赖注入的四种方式: set 注入 赋值,默认使用的是set() 方法,依赖注入底层是通过反射实现的 <bean id="student" class="cust. ...
- Spring IOC容器组件注入的几种方式
整理一下之前Spring的学习笔记,大致有一下几种Spring注入到容器中的方法: 1).配置在xml的方式. 2).开启包扫描@ComponentScan使用@Component,@Service, ...
- Spring详解-------依赖注入的三种方式实例详解
目录 1.什么是依赖注入 1.1类的关系 1.1.1 依赖关系(Dependency) 1.1.2 聚合(Aggregation) 1.2关系强度 2 为什么使用依赖注入 2.1开闭原则 2.1.1 ...
最新文章
- oracle /+append/好用吗,ORACLE-insert /*+append*/提高性能
- MongoDB进阶-内嵌文档查询
- 互联网发展趋势:社区化、碎片化、一站式、寒冬
- Spark _06_补充部分算子【一】
- 2017-2018-2课表
- Eclipse添加git插件上传项目到github
- lstm 做多分类loss完全不下降_使用Induction Network做Few-Shot Text分类
- 三星+t800+原生android,三星T800(GALAXY Tab S WLAN版)一键救砖教程,轻松刷回官方系统...
- powerdesign 下ER模型中展示数据注释中文列
- Leetcode 2029. 石子游戏 IX
- 企业微信和钉钉的区别以及企业微信的功能
- UE4_UE5制作3DUI-跟随相机朝向(附工程)
- 原生js实现动画过渡效果
- Ajax和Json使用
- 中国传媒发展十大趋势
- 2019西工大计算机类排名,西北工业大学2019年排名第31位 较2018年上升1名
- 数据库的实例化操作——员工信息的查询——简单表查询(二)
- 高斯模糊java代码_Java实现高斯模糊算法处理图像
- 云-移动手机端项目总结
- 人工智能未来替代的职位,主要有哪些行业?
热门文章
- [转载] 使用 Web 标准生成 ASP.NET 2.0 Web 站点
- [转载] python中的for循环对象和循环退出
- stack示例_C.示例中的Stack.CopyTo()方法
- 什么是算术运算和逻辑运算_8086微处理器的算术和逻辑运算
- python矩阵中插入矩阵_Python | 矩阵的痕迹
- VB另类技巧(可以用于VBA)-指针的使用
- Django代码编写规范
- oracle不能访问管理页面,Oracle Grid Control CONSOLE无法打开9i数据库的管理维护页面...
- 认识和选购极致画质的显示器
- python并发编程之semaphore(信号量)_浅谈Python并发编程之进程(守护进程、锁、信号量)...