这是Spring手册中关于该类的使用说明:
引用
另一个bean工厂后置处理器PropertyOverrideConfigurer类似于PropertyPlaceholderConfigurer。但是与后者相比,前者对于bean属性可以有缺省值或者根本没有值。如果起覆盖作用的Properties文件没有某个bean属性的内容,那么将使用缺省的上下文定义。
bean工厂并不会意识到被覆盖,所以仅仅察看XML定义文件并不能立刻知道覆盖配置是否被使用了。在多个PropertyOverrideConfigurer实例中对一个bean属性定义了不同的值时,最后定义的值将被使用(由于覆盖机制)。
Properties文件的配置应该是如下的格式:
beanName.property=value
一个properties文件可能是下面这样的:
dataSource.driverClassName=com.mysql.jdbc.Driver
dataSource.url=jdbc:mysql:mydb
这个示例文件可用在这样一个bean容器:包含一个名为dataSource的bean,并且这个bean有driver和url属性。
注意它也支持组合的属性名称,只要路径中每个组件除了最后要被覆盖的属性外全都是非空的(比如通过构造器来初始化),在下例中:
foo.fred.bob.sammy=123
foo bean的fred属性的bob属性的sammy属性被设置为数值123。
可是,我按着上面配置,Spring却报告错误,没有成功配置,下面把我的实验,简单介绍一下:
<bean class="org.springframework.beans.factory.config.PropertyOverrideConfigurer">
<property name="locations">
<list>
<value>classpath:com/baobaotao/place/car.properties</value>
</list>
</property>
</bean>
<bean id="car" class="com.baobaotao.place.Car">
<property name="price" value="100"/>
<property name="maxSpeed" value="120"/>
</bean>
Car的类代码如下:
package com.baobaotao.place;
public class Car {
private int maxSpeed;
public String brand;
private double price;
//get/setter
}
car.properties这个属性文件如下:
car.maxSpeed=250
car.price=20000.00
Spring报出的错误如下:
org.springframework.beans.factory.BeanInitializationException: Could not process key 'car.maxSpeed' in PropertyOverrideConfigurer; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'car' is defined
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'car' is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:338)
at org.springframework.beans.factory.config.PropertyOverrideConfigurer.applyPropertyValue(PropertyOverrideConfigurer.java:139)
at org.springframework.beans.factory.config.PropertyOverrideConfigurer.processKey(PropertyOverrideConfigurer.java:127)
at org.springframework.beans.factory.config.PropertyOverrideConfigurer.processProperties(PropertyOverrideConfigurer.java:99)
at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:75)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:414)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:328)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:92)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:77)
at com.baobaotao.place.TestPropertyPlace.setUp(TestPropertyPlace.java:17)
...
不知有没有使用过该类的朋友,请分享一下经验,谢谢!
分享到:
相关推荐
请教:用vb写了一个打印当前页的命令,但总是出现打印窗口,有没有办法不出现这个窗口直接打印 悬赏分:25 - 解决时间:2010-2-4 11:07 因为经常需要打印当前的某一页而不是全部,所以在网上找到这个命令,建立宏...
这个问题可能是由多种原因引起的,包括但不限于配置错误、事务注解使用不当、事务传播行为理解有误等。下面我们将深入探讨这些可能的原因,并提供相应的解决策略。 首先,我们需要检查`SqlMapDao.java`和`...
在这个过程中,引导学生注意请教的技巧,如清晰地表达问题,向别人表示感谢,以及即使无法解答也要礼貌回应。 通过游戏,学生可以实践请教的步骤和注意事项,如: 1. 清楚地陈述需要帮助解决的问题。 2. 无论结果...
在本次的“部编三年级上册语文口语交际:请教”...通过这一系列教学活动,学生们能够在轻松愉快的氛围中,学会如何在适当的时间和场合,用恰当的方式向他人寻求帮助,这对其未来的社会生活和人际交往将产生积极影响。
总的来说,这个教案通过精心设计的活动,旨在提升三年级学生的口语交际能力,让他们掌握请教的正确方式,包括礼貌用语、清晰表达、多元请教方式以及团队合作中的有效沟通。通过游戏化的教学,使学生在轻松愉快的氛围...
综上所述,这个教学课件旨在通过具体的案例和活动,教导三年级的学生如何有礼貌地请教问题,提高他们的口语交际能力和问题解决能力。通过这样的教学,学生不仅能学会如何在学习上求助,还能在日常生活中更加自信地与...
NULL 博文链接:https://jiansi0424-163-com.iteye.com/blog/284158
总的来说,这个教案关注的是小学阶段重要的语文素养之一——口语交际能力的培养,尤其强调了在请教他人时的礼仪和有效沟通技巧,对于学生的全面发展具有重要意义。通过这样的教学,孩子们不仅能学会如何向他人请教,...
7. 测试新功能:运行这个按钮,你将看到一个消息框显示“你好,我叫张三”,这就证明你的类模块已经被成功创建和使用。 通过以上步骤,你可以在Access中创建和使用自定义的类模块,进一步增强数据库应用的功能和...
6. **应对无法解答的情况**:当被请教者无法提供帮助时,双方应保持礼貌,如“同学,不好意思,这个问题我帮不了你,你可以请教别人”。请教者也应表示感谢,即使问题未解决。 7. **培养良好习惯**:通过请教,学生...
6. **处理未解难题**:当被请教者也无法解决问题时,应表示感谢,同时可以寻求其他人的帮助,如“虽然这个问题没有得到解决,但还是谢谢你!” 7. **培养良好习惯**:通过学习请教的技巧,孩子们可以更好地解决问题...
通过四个环节的游戏,学生不仅掌握了请教的基本技巧,也体验了不同场合下的请教方法。教师强调礼貌、表达、倾听和追问的重要性,同时提醒学生根据实际情况选择合适的请教方式。通过这样的教学设计,学生能够在轻松...
在Delphi中,使用`override`关键字来标记这个新的实现,以表明它是为了替换父类的原有实现。覆盖允许子类扩展或修改父类的行为。例如: ```delphi type TBaseClass = class public procedure DoAction; virtual;...
在课堂上,教师引导学生探讨请教的有效方法,这有助于他们理解请教的礼仪和策略。例如,教师可以提出问题:“我们应该如何礼貌地向别人请教问题?”让学生自由发表观点,然后教师归纳出关键点,如:使用敬语、清晰...
这篇教学课件主要针对的是小学三年级的学生,旨在提升他们的口语交际能力,特别是关于"请教"这一社交技巧。在日常生活中,我们常常需要向他人寻求帮助,尤其是在学习中遇到难题时。"请教"不仅是一种获取知识的方式,...
首先,通过富有激情的导入新课,教师能够激发学生的学习兴趣,使他们对“请教”这个话题产生浓厚的热情。这种教学方法能够吸引学生的注意力,为后续的学习活动奠定积极的基础。其次,课堂讨论是促进学生思考的有效...
在这个场景下,"问题请教工程"可能指的是开发者或工程师在遇到技术难题时,向同事、社区或者专业论坛发起求助的过程。下面我们将深入探讨这一主题,分享一些相关知识点。 首先,有效的提问是解决问题的第一步。在...
案例中的赵友兰初次询问班长郭巧玲时,使用了不礼貌的语言,这可能导致对方不愿意提供帮助。正确的做法是用尊重和客气的语气提出问题,如“班长,这道题我不会做,想请你教教我,可以吗?” 2. 清晰表达:请教他人...
这篇教学课件主要针对小学三年级学生的语文口语交际能力进行培养,特别是如何有效地请教他人。在教育过程中,孩子们将学习到一系列关键的交际技巧,这对于他们的社会交往能力和问题解决能力至关重要。 首先,课件...
【口语交际 学会请教】 在我们的日常生活中,...在请教的过程中,我们不仅能解决问题,还能提升自身的沟通能力和人际关系,使我们成为一个更有智慧和魅力的人。因此,"学会请教"是我们在成长道路上不可或缺的一课。