Spring(二):配置和简单使用

一、下载地址(目前使用的是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");
相关文章
相关标签/搜索