spring 环境

引用:http://www.189works.com/article-96241-1.html

准备阶段:

到Spring官网下载所需的API包,其中spring-framework-X.X.X.RELEASE-with-docs.zip压缩包需要下载,里面的dist目录下有所需的API,还有一个是com.springsource.org.apache.commons.logging-1.1.1.jar需要下载,下载地址:http://www.springsource.org/download/community?project=Spring%2520Framework

图解:

我已经下载还了所需的API包,版本是3.1.1的,可以直接下载使用:http://pan.baidu.com/share/link?shareid=28989&uk=2198762756

 

测试阶段:

项目结构:

所需包导入:

其实有些jar包在这个测试中是不需要的,不过为了方便也不想逐一测试了。

 

com.sunflower.pojo.Student:

 1 package com.sunflower.pojo; 2  3 /** 4  *  学生实体类 5  */ 6 public class Student { 7     private String name; 8     private int age; 9 10     public String getName() {11         return name;12     }13 14     public void setName(String name) {15         this.name = name;16     }17 18     public int getAge() {19         return age;20     }21 22     public void setAge(int age) {23         this.age = age;24     }25 26 }

 这个类在这个测试中没有实际用途,只不过让这个测试看起来有这个意思。

 

com.sunflower.yuan.dao.StudentDAO:

 1 package com.sunflower.yuan.dao; 2  3  4 /** 5  * 学生数据存取接口,操作底层数据 6  */ 7 public interface StudentDAO { 8     public void saveStudent(); 9 10     public void removeStudent();11 }

 

com.sunflower.yuan.daoimp.StudentDAOImp:

 1 package com.sunflower.yuan.daoimp; 2  3 import com.sunflower.yuan.dao.StudentDAO; 4  5 /** 6  * 学生数据存取实现类 7  */ 8 public class StudentDAOImp implements StudentDAO { 9 10     @Override11     public void removeStudent() {12         System.out.println("Student deleted! Spring test success");13     }14 15     @Override16     public void saveStudent() {17         System.out.println("Student saved! Spring test success");18     }19 20 }

 

com.sunflower.yuan.service.StudentService:

 1 package com.sunflower.yuan.service; 2  3 /** 4  * 学生业务处理接口 5  */ 6 public interface StudentService { 7     public void saveStudent(); 8  9     public void removeStudnet();10 }

 com.sunflower.yuan.serviceimp.StudentServiceImp:

 1 package com.sunflower.yuan.serviceimp; 2  3 import com.sunflower.yuan.dao.StudentDAO; 4 import com.sunflower.yuan.daoimp.StudentDAOImp; 5 import com.sunflower.yuan.service.StudentService; 6  7 /** 8  * @author Caihanyuan 9  * @time 2012-9-11 下午07:47:5510  */11 public class StudentServiceImp implements StudentService {12     private StudentDAO studentDao = new StudentDAOImp();13 14     @Override15     public void removeStudnet() {16         studentDao.removeStudent();17     }18 19     @Override20     public void saveStudent() {21         studentDao.saveStudent();22     }23 24 }

 com.sunflower.yuan.test.Test:

 1 package com.sunflower.yuan.test; 2  3 import org.springframework.context.ApplicationContext; 4 import org.springframework.context.support.ClassPathXmlApplicationContext; 5  6 import com.sunflower.yuan.service.StudentService; 7 import com.sunflower.yuan.serviceimp.StudentServiceImp; 8  9 /**10  * @author Caihanyuan11  * @time 2012-9-11 下午07:53:5712  */13 public class Test {14     public static void main(String[] args) {15         ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");16         17         //得到注入的bean18         StudentService studentService = context.getBean("studentService", StudentServiceImp.class);19         studentService.saveStudent();20         studentService.removeStudnet();21     }22 }

第15行是通过解析xml配置文件获取Spring容器,第18行得到在配置文件中注入到Spring中的对象,注入的对象不能是接口

 

applicationContext.xml:

1 <?xml version="1.0" encoding="UTF-8"?>2 <beans3     xmlns="http://www.springframework.org/schema/beans"4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"5     xmlns:p="http://www.springframework.org/schema/p"6     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">7     8     <bean id="studentService" class="com.sunflower.yuan.serviceimp.StudentServiceImp"></bean>9 </beans>
原文地址:https://www.cnblogs.com/sode/p/2688802.html