spring注入属性(@Resource注解配置),属性值为空,求指导啊!!!

问题描述

@Resource属性注入测试在java普通工程不是web工程applicationContext.xml配置<context:component-scanbase-package="cn.itcast"></context:component-scan>pojo类:User@ComponentpublicclassUser{privateStringusername;User(){username="shisi";System.out.println("cn.itcast.transaction.Users开始了。。。。。");}publicStringword(){returnusername;}}测试类:publicclasstest2{@ResourceprivateUseruser;@Testpublicvoidceshi(){newClassPathXmlApplicationContext("applicationContext.xml");System.out.println(user);}@Testpublicvoidceshi2(){System.out.println("***********ceshi2*****************");ApplicationContextctx=newClassPathXmlApplicationContext("applicationContext.xml");Useruser2=(User)ctx.getBean("user");System.out.println(user2);System.out.println(user2.word());}}测试结果:测试方法ceshi()中user属性user值为null测试方法ceshi2()中可以正确得到user属性对象程序正常扫描bean各位大哥啊,请多多指教,小弟不胜感激!网上有说@Resource面向接口,我也试过用User实现一个接口,可是不行有说用于setter方法上,小弟也试过,也是不行求了解此问题的大哥指点一二

解决方案

解决方案二:
Resource属性有值,那这个类必须是从context.getBean来的。你ceshi个方法使用的是本类的属性,本类是由junit新建的,不是从spring容器中getBean来的,所以此属性为空。
解决方案三:
多谢前辈指点......
解决方案四:
引用1楼chouy的回复:

Resource属性有值,那这个类必须是从context.getBean来的。你ceshi个方法使用的是本类的属性,本类是由junit新建的,不是从spring容器中getBean来的,所以此属性为空。

时间: 2024-11-01 00:39:40

spring注入属性(@Resource注解配置),属性值为空,求指导啊!!!的相关文章

关于繁星类的spring注入问题,xml配置非注解

问题描述 自已定义了一个基类如下:publicclassBaseDaoImpl<T>implementsBaseDao<T>{privateSqlSessionTemplatesqlSessionTemplate;publicSqlSessionTemplategetSqlSessionTemplate(){returnsqlSessionTemplate;}publicvoidsetSqlSessionTemplate(SqlSessionTemplatesqlSessionTe

Spring使用p名称空间配置属性

Spring的p标签是基于XML Schema的配置方式,目的是为了简化配置方式. 在XML文件头部添加xmlns:p="http://www.springframework.org/schema/p"即可使用. 例如: 类Person 原本的bean配置为: 使用P标签的配置为: tool之后添加"-ref"后缀表示是对另外一个bean的引用.

openstack 配置keystone-manage db_sync同步出错 求指导

问题描述 root@ubuntu:~#keystone-managedb_syncTraceback(mostrecentcalllast):File"/usr/bin/keystone-manage",line28,in<module>cli.main(argv=sys.argv,config_files=config_files)File"/usr/lib/python2.7/dist-packages/keystone/cli.py",line14

SpringBoot配置属性之Server

SpringBoot配置属性系列 SpringBoot配置属性之MVC SpringBoot配置属性之Server SpringBoot配置属性之DataSource SpringBoot配置属性之NOSQL SpringBoot配置属性之MQ SpringBoot配置属性之Security SpringBoot配置属性之Migration SpringBoot配置属性之其他 另外附上个人关于springboot的一些文章 SpringBoot前世今生 SpringBoot集成mybatis S

hibernate5(4)实体映射注解配置[1]注解全面解析

相对于经典风格的实体配置xxx.hbm.xml,新版本hibernate使用JPA(Java Persistence API)注解配置能使我们的开发更加敏捷便利.在本系列前面部分的文章中,我们围绕JPA注解风格配置来逐步深入学习. 配置实例 下面先看一个实体类的配置实例: package com.zeng.model; import java.util.Date; import javax.persistence.Basic; import javax.persistence.Column; i

Spring boot将配置属性注入到bean 专题

@ConfigurationProperties和@value都是将外部属性注入到对象 @ConfigurationProperties很方便使用. 比用@value注解好吗? 在特定的方案中是的,这只是一个选择问题 @EnableConfigurationProperties //开启属性注入,有此注解就可以通过@autowired注入, 是配合@ConfigurationProperties使用的.如果没有@EnableConfigurationProperties,则使用@Configur

[Spring] 注入Bean属性

通常,JavaBean的属性是私有的,同时拥有一组存取器方法,setXXX()和getXXX()形式存在.Spring可以借助属性的set方法来配置属性的值,以实现setter方式的注入. Kenny是一个很有天赋的乐曲演奏家,由Intrumentalist类定义,如下: package com.springinaction.springidol; public class Instrumentalist implements Performer { public Instrumentalist

《Spring攻略(第2版)》——1.10 用@Required注解检查属性

1.10 用@Required注解检查属性 1.10.1 问题Spring的依赖检查功能仅能检查某些类型的所有属性.它的灵活性不够,不能仅检查特定的属性.在大部分情况下,你希望检查特定的属性是否设置,而不是特定类型的所有属性. 1.10.2 解决方案RequiredAnnotationBeanPostProcessor是一个Spring bean后处理器,检查带有@Required注解的所有Bean属性是否设置.Bean后处理器是一类特殊的Spring bean,能够在每个Bean初始化之前执行

spring注入-spring 注入时 子类父类注入 后子类属性为空

问题描述 spring 注入时 子类父类注入 后子类属性为空 有这样的结构设计类: 父类: package com.company.name.parent; public class CustomerInfoBO{ private XXXDao xXXDao; //xXXDao setter,getter } 子类: package com.company.name.children; public class CustomerInfoBO extends com.company.name.pa