my first spring application我的一个Spring程序尝试



spring-framework-1.2.2
+jdk1.5.004

1.directory
+My1stSpring
   --build.xml
   --hello.xml
   +lib
   +src
      +java
          --log4j.properties
          +hello
               --GreetingService.java
               --GreetingServiceImpl.java
               --HelloApp.java
      +webapp

2. source code
GreetingService.java
package hello;

public interface GreetingService
{
    
public void sayGreeting();
}

GreetingServiceImpl.java
package hello;

public class GreetingServiceImpl implements GreetingService
{
    
private String greeting;

    
public GreetingServiceImpl(){}

    
public GreetingServiceImpl(String greeting)
    
{
        
this.greeting=greeting;
    }


    
public void sayGreeting()
    
{
        System.
out.println(greeting);
    }


    
public void setGreeting(String greeting)
    
{
        
this.greeting=greeting;
    }

}

HelloApp.java
package hello;

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

public class HelloApp
{
    
public static void main(String[] args) throws Exception
    
{
        Resource res 
= new FileSystemResource("hello.xml");
        BeanFactory factory
=new XmlBeanFactory(res);
        GreetingService greetingService
=(GreetingService)factory.getBean("greetingService");
        greetingService.sayGreeting();
    }

}

3. mapping files fro spring
hello.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
    
<bean id="greetingService" class="hello.GreetingServiceImpl">
        
<property name="greeting">
            
<value>Buenos Dias!</value>
        
</property>
    
</bean>
</beans>
4. build file for ant
build.xml
<project name="hello" default="init">
    
<property name="spring.home" location="C:/java/spring-framework-1.2.2"/>
    
<property name="target.dir" location="target"/>
    
<property name="classes.dir" location="${target.dir}/classes"/>
    
<property name="src.dir" location="src"/>
    
<property name="java.src.dir" location="${src.dir}/java"/>
    
<property name="webapp.src.dir" location="${src.dir}/webapp"/>
    
<property name="app.lib.dir" location="lib"/>
    
<property name="spring.lib.dir" location="${spring.home}/dist"/>
    
<property name="spring.depends.dir" location="${spring.home}/lib"/>
    
<property name="log.dir" location="logs"/>
    
    
<path id="dependency.path">
        
<fileset dir="${spring.lib.dir}" includes="*.jar"/>
        
<fileset dir="${spring.depends.dir}" includes="**/*.jar"/>
        
<fileset dir="${app.lib.dir}" includes="*.jar"/>
        
<pathelement location="${classes.dir}"/>
    
</path>
    
    
<target name="init">
        
<mkdir dir="${target.dir}"/>
    
</target>
    
    
<target name="build" depends="init">
        
<mkdir dir="${classes.dir}"/>
        
<javac destdir="${classes.dir}" classpathref="dependency.path">
            
<src path="${java.src.dir}"/>
        
</javac>
        
<copy todir="${classes.dir}" > 
            
<fileset dir="${java.src.dir}" >
                
<exclude name="**/*.java"/> 
            
</fileset> 
        
</copy>
    
</target>
    
    
<target name="war" depends="build">
        
<war destfile="${target.dir}/${ant.project.name}.war" webxml="${webapp.dir}/web.xml">
            
<lib dir="${spring.lib.dir}"/>
            
<lib dir="${app.lib.dir}"/>
            
<classes dir="${classes.dir}"/>
        
</war>
    
</target>
    
    
<target name="run" depends="build">  
        
<java classpathref="dependency.path" classname="hello.HelloApp" fork="true" />
    
</target> 
</project>

5. "ant build" to compile
    "ant run" to run the application!
posted on 2005-07-31 14:55  dbzou  阅读(440)  评论(0编辑  收藏  举报