Webcam Chat QuickBooks Advice international calling cards international phone cards
JavaBeat Java Books Certifications Certifications Kits Articles Tutorials Tips QNA Book Store Interview Questions SCJP 1.5 SCJP 1.6 SCWCD 5.0 SCBCD 5.0 SCEA SCJA Feeds

Usage of property config file In Spring Framework

Topic :
Feedback Request New QnA Print Email

//File: msf.properties

renderer.class=StandardOutView
provider.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;

public class MessageSupportFactory {

private static MessageSupportFactory instance = null;

private Properties props = null;

private View renderer = null;

private Model provider = null;

private MessageSupportFactory() {
props = new Properties();

try {
props.load( MessageSupportFactory.class.getResource("msf.properties").openStream());

// get the implementation classes
String rendererClass = props.getProperty("renderer.class");
String providerClass = props.getProperty("provider.class");

renderer = (View) Class.forName(rendererClass).newInstance();
provider = (Model) Class.forName(providerClass).newInstance();
} catch (Exception ex) {
ex.printStackTrace();
}
}

static {
instance = new MessageSupportFactory();
}

public static MessageSupportFactory getInstance() {
return instance;
}

public View getView() {
return renderer;
}

public Model getModel() {
return provider;
}

}



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

public class HelloWorldDecoupledWithFactory {

public static void main(String[] args) {
View mr = MessageSupportFactory.getInstance().getView();
Model mp = MessageSupportFactory.getInstance().getModel();
mr.setModel(mp);
mr.render();
}
}

Topic :
Feedback Request New QnA Print Email

All api java java 6.0 java 7.0 jdbc jsp servlet ejb jndi jms ejb 3.0 j2ee jee 5.0 jee 6.0 jsf struts spring Hibernate ajax JBoss Seam netbeans eclipse ant xml maven dojo junit javafx j2me log4j ESB JBoss Apache Quartz scjp mysql oracle gwt openjpa jmx yui google-guice android JBoss scwcd 5.0 scjp 1.5 scjp 1.6 scja scbcd 5.0

JavaBeat Website (2004-2011), India
javabeat | advertise | about us | contact | useful resources
Copyright (2004 - 2011), JavaBeat


Technology Blogs
Technology blogs Technology Blogs
blog log