首先众所周知,将spring作为容器管理java的web项目的话,首先要将

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener/listener-class>
</listener>

1、contextConfigLocation这个contextParam

配置这个参数会让应用启动时,加载这个参数来读取spring配置文件,如果没有设置这个参数,spring会默认读取WEB-INF下面的applicationContext.xml,

如果该目下没有,则启动应用会报错如下错误:IOException parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml] nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml]

2、listener配置

这个listener能监听能捕捉到服务器的启动和停止,在启动和停止触发里面的方法做相应的操作!
它必须在web.xml 中配置才能使用,是配置监听类的。然后应用会走contextInitialized的方法,这边ContextLoaderListener是实现的ServletContextListener的接口这个是servlet-api里面的接口,这边我们也可以自己继承ContextLoaderListener来对容器的初始化,定义我们自己的内容

只要配置好如上两个配置项,我们的web容器就是能正常工作,然而并没有bean被加入管理

3、applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xmlns="http://www.springframework.org/schema/beans"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans  
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">  
    <!-- 配置一个singleton Bean实例:默认 -->  
    <bean id="bean1" class="com.mytest.beans.Beans1" >
    <property name="name" value="123"></property>
    </bean>  
    <!-- 配置一个prototype Bean实例 -->  
    <bean id="bean2" class="com.mytest.beans.Beans2" scope="prototype"/>  
      
</beans>  

如上是一个简单的spring容器配置文件的模板

这个配置文件在后面做详细更新,因为这边涉及到很多spring主要的bean容器的涉及思想

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐