一、下載地址(目前使用的是4.2.0)java
下面均可以git
http://repo.springsource.org/libs-release-local/org/springframework/springgithub
http://repo.spring.io/simple/libs-release-local/org/springframework/spring/web
源碼能夠在Git上獲取,地址:spring
https://github.com/spring-projects/spring-framework express
二、相關jar包編程
Spring AOP:Spring的面向切面編程,提供AOP(面向切面編程)的實現api
Spring Aspects:Spring提供的對AspectJ框架的整合緩存
Spring Beans:Spring IOC的基礎實現,包含訪問配置文件、建立和管理bean等。tomcat
Spring Context:在基礎IOC功能上提供擴展服務,此外還提供許多企業級服務的支持,有郵件服務、任務調度、JNDI定位,EJB集成、遠程訪問、緩存以及多種視圖層框架的支持。
Spring Context Support:Spring context的擴展支持,用於MVC方面。
Spring Core:Spring的核心工具包
Spring expression:Spring表達式語言
Spring Framework Bom:
Spring Instrument:Spring對服務器的代理接口
Spring Instrument Tomcat:Spring對tomcat鏈接池的集成
Spring JDBC:對JDBC 的簡單封裝
Spring JMS:爲簡化jms api的使用而作的簡單封裝
Spring Messaging:
Spring orm:整合第三方的orm實現,如hibernate,ibatis,jdo以及spring 的jpa實現
Spring oxm:Spring對於object/xml映射的支持,可讓JAVA與XML之間來回切換
Spring test:對JUNIT等測試框架的簡單封裝
Spring tx:爲JDBC、Hibernate、JDO、JPA等提供的一致的聲明式和編程式事務管理。
Spring web:包含Web應用開發時,用到Spring框架時所需的核心類,包括自動載入WebApplicationContext特性的類、Struts與JSF集成類、文件上傳的支持類、Filter類和大量工具輔助類。
Spring webmvc:包含SpringMVC框架相關的全部類。包含國際化、標籤、Theme、視圖展示的FreeMarker、asperReports、Tiles、Velocity、XSLT相關類。固然,若是你的應用使用了獨立的MVC框架,則無需這個JAR文件裏的任何類。
Spring webmvc portlet:Spring MVC的加強
Spring websocket:
將以上jar包以及commons-logging.jar加入BuildPath便可
三、xml配置
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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
四、在獨立應用程序中簡單的獲取Bean
簡單的用ApplicationContext作測試的話,得到Spring中定義的Bean實例(對象),ApplicationContext能夠用ClassPathXmlApplicationContext 或者FileSystemXmlApplicationContext
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); FileSystemXmlApplicationContext context = new FileSystemXmlApplicationContext("E:/Java_Project/TestSpring/src/applicationContext.xml"); context.getBean("配置文件中的beanId");
五、Web開發中的ApplicationContext加載器
加載器目前有兩種選擇:ContextLoaderListener和ContextLoaderServlet。
這二者在功能上徹底等同,只是一個是基於Servlet2.3版本中新引入的Listener接口實現,而另外一個基於Servlet接口實現。開發中可根據目標Web容器的實際狀況進行選擇。
ContextLoaderServlet已經不推薦用了,它只是爲了兼容低版本的servlet.jar才用的。總的來講:Listerner要比Servlet更好一些,並且Listerner監聽應用的啓動和結束,而Servlet啓動要稍微延遲一些。
配置很是簡單,在web.xml中增長:
<listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
或者
<servlet> <servlet-name>context</servlet-name> <servlet-class> org.springframework.web.context.ContextLoaderServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet>
經過以上配置,Web容器會自動加載/WEB-INF/applicationContext.xml初始化 。
ApplicationContext實例,若是須要指定配置文件位置,可經過context-param加以指定:
<context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/myApplicationContext.xml</param-value> </context-param>
配置完成以後,便可經過
WebApplicationContextUtils.getWebApplicationContext方法在Web應用中獲取ApplicationContext引用。
ApplicationContext ctx=WebApplicationContextUtils.getWebApplicationContext(); ctx.getBean("beanId");