WEB项目中SpringMVC的配置步骤



1.配置 [WEB-INF/web.xml]


1.1----->配置上下文载入器listener(web项目可以不配置listener):
配置listener后容器默认加载[WEB-INF/applicationContext.xml]配置文件(通过1.3可以改变配置文件位置)
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>




1.2----->配置DispatcherServlet
<servlet>
<servlet-name>spring</servlet-name><!--名字任取-->
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.do</url-pattern><!--要发送给DispatcherServlet的请求的URL-->
</servlet-mapping>

容器默认加载[WEB-INF/xxxxx-servlet.xml]作为servlet配置文件(通过1.3可以改变配置文件位置)
1.3----->指定配置文件的位置contextConfigLocation(可选)
<context-param>
<para-name>contextConfigLocation</param-name>
<para-value>
/WEB-INF/spring-servlet.xml
/WEB-INF/config/xxxx.xml
......
</param-value>
</context-param>



1.4----->配置编码过滤器(可选),解决中文乱码问题
<filter>
<filter-name>encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>



2.配置 [WEB-INF/xxxx-servlet.xml](xxxx指的是web.xml中的给servlet取的名字)
2.1-----》在[WEB-INF/xxxx-servlet.xml]文件的配置决定哪个控制器处理哪个HTTP请求,下面是两种配置方式(任选其一)
方式一:----->配置处理器映射
DispatcherServlet收到HTTP请求之后将其交给处理器映射
使用处理器映射可以讲HTTP请求映射到你想指定的控制器上


<!-- ----------------------------------------------------------------------------------
处理器映射:BeanNameUrlHandlerMapping:简单而强大的处理器映射
这是DispatcherServlet的默认处理器映射,当没有声明任何处理器映射时默认使用它
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
 -->
<!-- 处理器映射:SimpleUrlHandlerMapping:另一更强大的处理器映射
  它是通过mappings属性讲URL映射到相应的处理器的
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/reg.do">regCon</prop>
<prop key="/sss.do">controller1</prop>
<prop key="/qqq.do">controller2</prop>
...... ......
</props>
</property>
</bean>

--------------------------------------------------------------------------------------->
注:如果不指定处理器映射,DispatcherServlet会默认使用BeanNameUrlHandlerMapping


方式二:----->通过注解的方式 例如: @Controller @RequestMapping("xxxx.do") ... ...
在[WEB-INF/xxxx-servlet.xml]文件中添加语句:
<context:component-scan base-package="您的包名"/>
这句话告诉spring容器扫描你的包(src目录下),将包 里面有注解的类纳入容器管理


2.2----->配置视图解析器
控制器处理请求之后返回ModelAndView需要调用视图解析器来把视图显示在网页上
常用视图解析器:InternalResourceResolver
如果需要使用freemarker或者velocity可以使用
FreeMarkerViewResolver和VelocityViewResolver或VelocityLayoutViewResolver
<!-- 配置视图解析器 -->
(InternalResourceViewResolver默认使用InternalResourceView作为viewClass)
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"/>
<property name="suffix" value=".jsp"/>
<property name="viewClass" value="org.springframework.web.servlet.view.InternalResourceView"/>  
</bean>



附:参考applicationContext.xml与xxx-servlet.xml的区别:
http://blog.csdn.net/zb0567/article/details/7930642
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值