SpringMVC配置几种方式
来源:互联网 发布:java中时间格式 编辑:程序博客网 时间:2024/06/05 19:08
在springMVC中,有“分发器”、“映射处理器”、“控制器”、“视图解析器”的概念。
需要引入的jar包
1、 配置web.xml文件(a,b两种可同时使用)
a) 配置spring的监听并引入spring配置文件,监听器启动时,会自动加载spring的配置文件:
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:web-context.xml
</param-value>
</context-param>
b) 配置分发器(DispatcherServlet),访问*.htm时候,就会触发此分发器:
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
<!--如果用这种方法加载spring配置文件,则不需配spring的监听-->
<!--classpath:web-context.xml-->
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
2、 配置spring文件(web-context.xml)(当没有配置视图解析器时,springmvc会启动默认的视图解析器)
a) 配映射处理器(HandlerMapping),spring的dispatcherServlet使用的默认处理器映射是BeanNameUrlHandlerMapping:
<bean id="beanNameUrlMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"
</bean>
b) 配置方法处理请求(MultiActionController),根据页面请求的控制器方法名的映射,处理相应请求时调用该方法:
<bean id="methodNameResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName">
<value>cmd</value>
</property>
</bean>
c) 配置视图解析器(ViewResolver)并引入视图的配置文件(tiles-defs.xml):
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.tiles.TilesJstlView</value>
</property>
</bean>
<bean id="tilesConfigurer"
class="org.springframework.web.servlet.view.tiles.TilesConfigurer">
<property name="definitions">
<list>
<value>WEB-INF/classes/tiles-defs.xml</value>
</list>
</property>
</bean>
d) 配置控制层类(Controller)这里的name属性担任了两个责任:即定义bean的名字,还定义需要使用这个控制器处理的URL。由于URL中含有XML的id属性中非法字符 -- “斜杠”,所以用name属性而没有用id:
<bean name="/testController.htm" class="myh.controller.Test">
<property name="methodNameResolver">
<refbean="methodNameResolver"/>
</property>
</bean>
3、 视图配置文件(tiles-defs.xml)
<tiles-definitions>
<definition name="index"page="/index.jsp" />
</tiles-definitions>
4、 控制层类文件(TestController.Java)
每个控制层的类需继承类MultiActionController
public class Testextends MultiActionController {
public ModelAndView test(HttpServletRequestrequest, HttpServletResponse response){
System.out.println("-----------------------------------------");
return newModelAndView("index", null);
}
}
5、 页面访问
页面在访问时只需按照(<%=request.getContextPath()%>/testController.htm?cmd=test)这种方式提交,如果是表单提交,提交方式为post
- SpringMVC配置几种方式
- SpringMVC加载配置Properties文件的几种方式
- SpringMVC加载配置Properties文件的几种方式
- SpringMVC加载配置Properties文件的几种方式
- SpringMVC加载配置Properties文件的几种方式
- SpringMVC加载配置Properties文件的几种方式
- SpringMVC加载配置Properties文件的几种方式
- SpringMVC的几种返回方式
- SpringMVC 上传的几种方式
- SpringMVC的几种返回方式
- SpringMVC的几种返回方式
- SpringMVC返回值的几种方式
- SpringMVC的几种返回方式
- SpringMVC的几种返回方式
- SpringMVC的几种返回方式
- SpringMVC的几种返回方式
- SpringMVC的几种返回方式
- springMVC 几种页面跳转方式
- Mac 用RVM配置ruby环境的时候出现错误No binary rubies available for: osx/10.11/x86_64/ruby-2.2.2.
- 将两个byte型拼接成16位二进制
- to_number() ----函数的用法
- HDU 2091 空心三角形
- Foundation框架中的NSDictionary 、NSMutableDictionary
- SpringMVC配置几种方式
- 三分钟搞定安卓+iOS适配问题
- BroadcastReceiver 中的onReceiver()方法执行多次的完美结局方案
- FZU 2195 检查站点【带权并查集】
- C语言中的void * 指针类型
- hdu 1074 Doing Homework 状压dp
- Html元素及属性
- HDU 5695 Gym Class【拓扑排序+优先队列】
- HDU 5739 点-双联通分量