Property Editor Bean : IoC Factory Beans « Spring « Java






Property Editor Bean

/*
Pro Spring
By Rob Harrop
Jan Machacek
ISBN: 1-59059-461-4
Publisher: Apress
*/



///////////////////////////////////////////////////////////////////////////////////////
//File: builtin.xml
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="builtInSample" class="PropertyEditorBean">
        <property name="class">
            <value>java.lang.String</value>
        </property>
        <property name="file">
            <value>c:/test.txt</value>
        </property>
        <property name="locale">
            <value> en-GB </value>
        </property>
        <property name="url">
            <value>http://www.springframework.org</value>
        </property>
        <property name="properties">
            <value> 
                name=foo 
                age=19 
            </value>
        </property>
        <property name="strings">
            <value>rob,jan,rod,jurgen,alef</value>
        </property>
        <property name="bytes">
            <value>Hello World</value>
        </property>
    </bean>
</beans>


///////////////////////////////////////////////////////////////////////////////////////
import java.io.File;
import java.net.URL;
import java.util.Locale;
import java.util.Properties;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.FileSystemResource;

public class PropertyEditorBean {

    private Class cls;

    private File file;

    private URL url;

    private Locale locale;

    private Properties properties;

    private String[] strings;

    private byte[] bytes;

    public void setClass(Class cls) {
        System.out.println("Setting class: " + cls.getName());
        this.cls = cls;
    }

    public void setFile(File file) {
        System.out.println("Setting file: " + file.getName());
        this.file = file;
    }

    public void setLocale(Locale locale) {
        System.out.println("Setting locale: " + locale.getDisplayName());
        this.locale = locale;
    }

    public void setProperties(Properties properties) {
        System.out.println("Loaded " + properties.size() + " properties");
        this.properties = properties;
    }

    public void setStrings(String[] strings) {
        System.out.println("Loaded " + strings.length + " Strings");
        this.strings = strings;
    }

    public void setUrl(URL url) {
        System.out.println("Setting URL: " + url.toExternalForm());
        this.url = url;
    }

    public void setBytes(byte[] bytes) {
        System.out.println("Adding " + bytes.length + " bytes");
        this.bytes = bytes;
    }

    public static void main(String[] args) {
        BeanFactory factory = new XmlBeanFactory(new FileSystemResource(
                "build/builtin.xml"));
        PropertyEditorBean bean = (PropertyEditorBean) factory
                .getBean("builtInSample");
    }
}

           
       








PropertyEditorBean.zip( 1,476 k)

Related examples in the same category

1.Hierarchical Bean Factory Usage
2.Message Digest Example
3.Method Replacement Example
4.Logging Bean Example
5.Custom Editor Example
6.Accessing Factory Beans