1.創建Maven項目,項目名稱springdemo19,如圖所示

wKiom1jTQyCxZWieAAAUjNTMMzM679.png-wh_50


2.配置Maven,修改項目中的pom.xml文件,修改內容如下

<project?xmlns="http://maven.apache.org/POM/4.0.0"?
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"?
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0?http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>1.0.0</modelVersion><groupId>shequ</groupId><artifactId>springdemo13</artifactId><version>0.0.1-SNAPSHOT</version><properties><java.version>1.7</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding></properties><repositories><repository><id>codelds</id><url>https://code.lds.org/nexus/content/groups/main-repo</url></repository></repositories><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.10</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>4.1.4.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.1.4.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>4.1.4.RELEASE</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.34</version></dependency></dependencies><build/>
</project>


3.在src/main/java下創建實體Bean Forum,包名(com.mycompany.shequ.bean)如圖所示

wKioL1jTQ4KTMep-AABNONnzWi4782.png-wh_50


4.實體Bean Forum的內容如下

package?com.mycompany.shequ.bean;public?class?Forum?{private?int?fid;private?String?name;public?int?getFid()?{return?fid;}public?void?setFid(int?fid)?{this.fid?=?fid;}public?String?getName()?{return?name;}public?void?setName(String?name)?{this.name?=?name;}}


5.在src/main/java下創建實體Bean ForumPost,包名(com.mycompany.shequ.bean)如圖所示

wKioL1jTQ7WyNzTBAABOjOZjDc4388.png-wh_50


6.實體Bean ForumPost的內容如下

package?com.mycompany.shequ.bean;import?org.springframework.beans.factory.annotation.Autowired;public?class?ForumPost?{private?int?pid;private?String?name;private?Forum?forum;public?ForumPost()?{super();}@Autowiredpublic?ForumPost(Forum?forum)?{super();this.forum?=?forum;}public?int?getPid()?{return?pid;}public?void?setPid(int?pid)?{this.pid?=?pid;}public?String?getName()?{return?name;}public?void?setName(String?name)?{this.name?=?name;}public?Forum?getForum()?{return?forum;}public?void?setForum(Forum?forum)?{this.forum?=?forum;}}


7.在src/main/resources下創建Bean配置文件,配置文件名稱spring-bean.xml,如圖所示

wKioL1jTQ_qhGa7jAABMVuemUic392.png-wh_50


8.spring-bean.xml文件的內容如下

<?xml?version="1.0"?encoding="UTF-8"?>
<beans?xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd"><bean?id="forumpost"class="com.mycompany.shequ.bean.ForumPost"></bean><bean?id="forum"?class="com.mycompany.shequ.bean.Forum"><property?name="fid"?value="3"></property><property?name="name"?value="@Autowired?在構造方法上"></property></bean></beans>


9.在src/main/resources下創建spring的核心配置文件applicationContext.xml,如圖所示

wKioL1jTRDjRcx2RAABJeQ61eMI624.png-wh_50


10.spring的核心配置文件applicationContext.xml的內容如下

<?xml?version="1.0"?encoding="UTF-8"?>
<beans?xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-4.0.xsd"><context:annotation-config?/><import?resource="bean/spring-bean.xml"/></beans>


11.在src/test/java下創建測試類ForumPostTest,包名(com.mycompany.shequ.bean),如圖所示

wKiom1jTRHOiWK6aAABKLf2di2Y842.png-wh_50


12.測試類ForumPostTest的內容如下

package?com.mycompany.shequ.bean;import?org.junit.Test;
import?org.springframework.context.ApplicationContext;
import?org.springframework.context.support.ClassPathXmlApplicationContext;public?class?ForumPostTest?{/***?spring?的自動裝配Beans,通過注解@Autowired在構造方法上*/@Testpublic?void?autowiredTest(){ApplicationContext?context?=?new?ClassPathXmlApplicationContext("applicationContext.xml");ForumPost?forumPost?=?(ForumPost)?context.getBean("forumpost");System.out.println(forumPost.getForum().getName());}
}	


13.在測試類ForumPostTest的byTypeTest方法上右鍵運行,輸出結果如圖所示

wKiom1jTRMbgvN9fAAEPP5PjDKU437.png-wh_50

wKioL1jUhs6CU6hVAABwCKMO5XE435.png-wh_50