|  |  | | Spring Load Resource from file, classpath and URL |  |  |  | 
   
| /*
 Pro Spring
 By Rob Harrop
 Jan Machacek
 ISBN: 1-59059-461-4
 Publisher: Apress
 */
 
 
 
 ///////////////////////////////////////////////////////////////////////////////////////
 
 //File: events.xml
 <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
 <beans>
 <bean id="publisher" class="Publisher"/>
 <bean id="messageEventListener" class="MessageEventListener"/>
 </beans>
 
 ///////////////////////////////////////////////////////////////////////////////////////
 import org.springframework.context.ApplicationEvent;
 
 
 public class MessageEvent extends ApplicationEvent {
 
 private String msg;
 public MessageEvent(Object source, String msg) {
 super(source);
 this.msg = msg;
 }
 
 public String getMessage() {
 return msg;
 }
 
 }
 ///////////////////////////////////////////////////////////////////////////////////////
 import org.springframework.context.ApplicationEvent;
 import org.springframework.context.ApplicationListener;
 
 public class MessageEventListener implements ApplicationListener {
 
 
 public void onApplicationEvent(ApplicationEvent event) {
 if(event instanceof MessageEvent) {
 MessageEvent msgEvt = (MessageEvent)event;
 System.out.println("Received: " + msgEvt.getMessage());
 }
 }
 
 }
 
 ///////////////////////////////////////////////////////////////////////////////////////
 import org.springframework.beans.BeansException;
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.ApplicationContextAware;
 import org.springframework.context.support.FileSystemXmlApplicationContext;
 
 public class Publisher implements ApplicationContextAware {
 
 private ApplicationContext ctx;
 
 public static void main(String[] args) {
 ApplicationContext ctx = new FileSystemXmlApplicationContext(
 "build/events.xml");
 
 Publisher pub = (Publisher) ctx.getBean("publisher");
 pub.publish("Hello World!");
 pub.publish("The quick brown fox jumped over the lazy dog");
 }
 
 public void setApplicationContext(ApplicationContext applicationContext)
 throws BeansException {
 this.ctx = applicationContext;
 
 }
 
 public void publish(String message) {
 ctx.publishEvent(new MessageEvent(this, message));
 }
 }
 ///////////////////////////////////////////////////////////////////////////////////////
 
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.support.FileSystemXmlApplicationContext;
 import org.springframework.core.io.Resource;
 
 public class ResourceDemo {
 
 public static void main(String[] args) throws Exception{
 ApplicationContext ctx = new FileSystemXmlApplicationContext(
 "build/events.xml");
 
 Resource res1 = ctx.getResource("file:///c:/test.txt");
 displayInfo(res1);
 Resource res2 = ctx.getResource("classpath:lib/commons-logging.jar");
 displayInfo(res2);
 Resource res3 = ctx.getResource("http://www.google.co.uk");
 displayInfo(res3);
 }
 
 private static void displayInfo(Resource res) throws Exception{
 System.out.println(res.getClass());
 System.out.println(res.getURL().getContent());
 System.out.println("");
 }
 }
 
 
 
 
 |  |  |  |  |  SpringResource.zip( 1,199 k) |  | Related examples in the same category | 
 |