1.創建Maven項目,項目名稱springdemo19,如圖所示
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)如圖所示
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)如圖所示
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,如圖所示
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,如圖所示
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),如圖所示
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方法上右鍵運行,輸出結果如圖所示
轉載于:https://blog.51cto.com/suyanzhu/1909539