当前位置:  开发笔记 > 编程语言 > 正文

是否有一个类似于PropertyPlaceholderConfigurer的类用于接受XML的Spring?

如何解决《是否有一个类似于PropertyPlaceholderConfigurer的类用于接受XML的Spring?》经验,为你挑选了1个好方法。

Spring有一个非常方便的便利类,名为PropertyPlaceholderConfigurer,它接受一个标准的.properties文件并将其中的值注入到bean.xml配置中.

有没有人知道一个完全相同的类,并以相同的方式与Spring集成,但接受配置的XML文件.具体来说,我正在考虑Apache digester风格的配置文件.这样做很容易,我只是想知道是否有人.

建议?



1> toolkit..:

我刚试过这个,它应该可以正常工作.

PropertiesPlaceholderConfigurer包含setPropertiesPersister方法,因此您可以使用自己的PropertiesPersister子类.默认的PropertiesPersister已经支持XML格式的属性.

只是为了向您展示完整的代码:

JUnit 4.4测试用例:

package org.nkl;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@ContextConfiguration(locations = { "classpath:/org/nkl/test-config.xml" })
@RunWith(SpringJUnit4ClassRunner.class)
public class PropertyTest {

    @Autowired
    private Bean bean;

    @Test
    public void testPropertyPlaceholderConfigurer() {
        assertNotNull(bean);
        assertEquals("fred", bean.getName());
    }
}

spring配置文件 test-config.xml



  
  
    
  

XML属性文件properties.xml- 有关用法的说明,请参见此处.




  fred

最后是豆子:

package org.nkl;

public class Bean {
    private String name;
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
}

希望这可以帮助...

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有