IoC XML Config : IoC Config « Spring « Java






IoC XML Config

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



///////////////////////////////////////////////////////////////////////////////////////
//File: beans.properties

# The View
view.class=StandardOutView
view.model(ref)=model

# The Model
model.class=HelloWorldModel


///////////////////////////////////////////////////////////////////////////////////////

public interface Model {

  public String getMessage();
}



///////////////////////////////////////////////////////////////////////////////////////

public interface View {

    public void render();
    
    public void setModel(Model m);
    public Model getModel();
}



///////////////////////////////////////////////////////////////////////////////////////


public class StandardOutView implements View {

    private Model model = null;

    public void render() {
        if (model == null) {
            throw new RuntimeException(
                    "You must set the property model of class:"
                            + StandardOutView.class.getName());
        }

        System.out.println(model.getMessage());
    }

    public void setModel(Model m) {
        this.model = m;
    }

    public Model getModel() {
        return this.model;
    }

}

///////////////////////////////////////////////////////////////////////////////////////


public class HelloWorldModel implements Model {

    public String getMessage() {

        return "Hello World!";
    }

}


///////////////////////////////////////////////////////////////////////////////////////

import java.io.FileInputStream;
import java.util.Properties;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.beans.factory.support.PropertiesBeanDefinitionReader;

public class HelloWorldSpringWithDI {

    public static void main(String[] args) throws Exception {

        // get the bean factory
        BeanFactory factory = getBeanFactory();

        View mr = (View) factory.getBean("view");
        mr.render();
    }

    private static BeanFactory getBeanFactory() throws Exception {
        // get the bean factory
        DefaultListableBeanFactory factory = new DefaultListableBeanFactory();

        // create a definition reader
        PropertiesBeanDefinitionReader rdr = new PropertiesBeanDefinitionReader(
                factory);

        // load the configuration options
        Properties props = new Properties();
        props.load(HelloWorldSpringWithDI.class.getResource("beans.properties").openStream());

        rdr.registerBeanDefinitions(props);

        return factory;
    }
}



           
       








IoCXMLConfig.zip( 1,201 k)

Related examples in the same category

1.Simplest Usage of property config file In Spring
2.Load Bean Definition From XML File
3.Lookup Demo
4.IoC in properties file