Spring MVC的配置文件
Spring MVC的配置文件绝对是开发中的重点,又是难点。重点是因为没有它项目无法运行,许多设计思想都要依赖于配置文件来实现(依赖注入、AOP切面编程),难点是因为一个大中型项目估计会有5个以上的配置文件,各个配置文件中又有许多配置项,各个配置项的用途以及使用方法都需要是了解,所以有点复杂,需要在开发实践中去慢慢了解(不建议大家死记硬背)。
1)站点配置文件web.xml
在配置前大家可以先看看,web.xml文件的作用: http://www.cnblogs.com/yqskj/articles/2233061.html 说的非常好;
<web-app >{内容}</web-app>
web.xml我们常用的一些标签元素及其功能:
1、指定欢迎页面,例如:
PS:指定了2个欢迎页面,显示时按顺序从第一个找起,如果第一个存在,就显示第一个,后面的不起作用。如果第一个不存在,就找第二个,以此类推。
2、命名与定制URL。我们可以为Servlet和JSP文件命名并定制URL,其中定制URL是依赖命名的,命名必须在定制URL前。下面拿serlet来举例:
(1)、为Servlet命名:
(2)、为Servlet定制URL、
3、定制初始化参数:可以定制servlet、JSP、Context的初始化参数,然后可以再servlet、JSP、Context中获取这些参数值。
下面用servlet来举例:
经过上面的配置,在servlet中能够调用getServletConfig().getInitParameter("param1")获得参数名对应的值。
4、指定错误处理页面,可以通过“异常类型”或“错误码”来指定错误处理页面。
5、设置过滤器:比如设置一个编码过滤器,过滤所有资源
6、设置监听器:
7、设置会话(Session)过期时间,其中时间以分钟为单位,假如设置60分钟超时:
下面我们在/WebContent/WEB-INF/下新建web.xml文件,具体内容如下,里面有一些最基本的配置,里面的配置都有注释:
Spring MVC配置文件
大家肯定都注意到web.xml文件里有个配置为 “/WEB-INF/springMVC-servlet.xml” 这个文件是Spring MVC的配置文件,Spring官方文档上推荐的默认的文件名是[servlet-name]-servlet.xml文件,这里 servlet-name 叫 springMVC,因此,我新建了一个springMVC-servlet.xml。
我们现在在/WEB-INF/下建立一个/springMVC-servlet.xml文件,内容如下:
这个文件内容不多,里面真正有意义的内容为
这是啥意思呢? 这个东西叫做bean, Spring 中的bean是什么鬼? 简单来说在Spring启动之前bean就是一个普通java类,但不是说所有的java类都是bean ,如果一个普通类想要成为bean必须要在配置文件里配置,就是说每一个bean都要对应一个java类文件,就是上面你看到的。每一个Bean对应通常需要指定两个属性。
id:确定该Bean的唯一标识符,容器对Bean管理、访问、以及该Bean的依赖关系,都通过该属性完成。Bean的id属性在Spring 配置文件中是唯一的。
class:指定该Bean的具体实现类。注意这里不能使接口。通常情况下,Spring会直接使用new关键字创建该Bean的实例,因此,这里必须提供Bean实现类的类名。
当Spring 启动之后会把配置文件()里的这些java类,new 一个对象,存在Spring 里(有的地方称为 Spring 容器),有可能会有很多对象在Spring 里面(多个bean),当我们写代码的时候就可以直接去用这些对象,而不用再去创建对象了。注意:只有在配置文件里声明过的类才会被创建对象,其他的类不会被创建为bean。
那么bean是什么呢? bean就是存在于Spring 容器中的对象。如果把Spring 比作一辆汽车,bean就是汽车里的各个模块零件,比如:发动机,变速箱,电路系统等,当汽车启动时候就已经将他们激活,就可以直接使用这些模块,而不用再去单独启动这些模块。