PropertyPlaceholderHelper

 

public class PropertyPlaceholderHelperTest {

    PropertyPlaceholderHelper helper = new PropertyPlaceholderHelper("${", "}");

    /**
     * 單個變量
     */
    @Test
    public void test(){

        String text = "name=${name}";
        Properties props = new Properties();
        props.setProperty("name", "admin");

        String result = helper.replacePlaceholders(text, props);

        assertEquals(result,"name=admin");

    }

    /**
     * 多個變量
     */
    @Test
    public void testMore(){

        String text = "name=${name},age=${age}";
        Properties props = new Properties();
        props.setProperty("name", "admin");
        props.setProperty("age", "18");

        String result = helper.replacePlaceholders(text, props);

        assertEquals(result,"name=admin,age=18");

    }

    /**
     * 遞歸
     */
    @Test
    public void testRecursion(){

        String text = "message=${message}";
        Properties props = new Properties();
        props.setProperty("message", "hi,${name}");
        props.setProperty("name", "admin");

        String result = helper.replacePlaceholders(text, props);

        assertEquals(result,"message=hi,admin");

    }

    /**
     * 其他符號
     */
    @Test
    public void testOtherMark(){

        helper = new PropertyPlaceholderHelper("$#", "#");

        String text = "name=$#name#,age=$#age#";
        Properties props = new Properties();
        props.setProperty("name", "admin");
        props.setProperty("age", "18");

        String result = helper.replacePlaceholders(text, props);

        assertEquals(result,"name=admin,age=18");


    }

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章