springmvc mvc:view-controller使用
来源:互联网 发布:淘宝优惠群起什么名字 编辑:程序博客网 时间:2024/05/21 22:49
mvc:view-controller使用场景是在:一般springmvc都是经过Controller,但是当我们不想经过Controller,而是直接访问视图的时候。就可以通过mvc:view-controller。
如在WEB-INF中有个ta.jsp
<mvc:view-controller path="/" view-name="ta"/>在spring-mvc.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" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <mvc:view-controller path="/" view-name="ta"/> <mvc:annotation-driven /> <!-- 自动扫描(自动注入) --> <context:component-scan base-package="com.wwzuizz.**.controller"/> <bean id="defaultViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:order="2"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="contentType" value="text/html"/> <property name="prefix" value="/WEB-INF/"/> <property name="suffix" value=".jsp"/> </bean></beans>
注意还要添加视图解析器InternalResourceViewResolver设置好jsp解析这时候还要删除掉根目录下的index.jsp
因为默认jsp是交给tomcat/conf/web.xml中的 jsp servlet处理的
而在tomcat/conf/web.xml中有
<welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
你可以去掉tomcat中web。xml里面的welcome-file-list中的index.jsp或者删除吊跟目绿的index.jsp或者是直接spring拦截所有的jsp
然后运行访问/路径就是访问WEB-INF中的ta.jsp了
然后怎么设置访问到html的呢,如就想/访问的是ta.html
这时候因为DispatcherServlet是拦截所有请求,即便是静态文件Spring MVC会将它们当成一个普通请求处理,因此找不到对应处理器将导致错误。
有有两种方法
1、
<mvc:default-servlet-handler/>
加上这句2、
<mvc:resources mapping="/WEB-INF/**" location="/WEB-INF/"/>因为我的ta.html是在WEB-INF中的
最后修改下视图解析器
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <mvc:view-controller path="/" view-name="ta"/> <mvc:annotation-driven /> <!--<mvc:default-servlet-handler/>--> <!-- 自动扫描(自动注入) --> <context:component-scan base-package="com.wwzuizz.**.controller"/> <mvc:resources mapping="/WEB-INF/**" location="/WEB-INF/"/> <!--<bean id="defaultViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:order="2">--> <!--<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>--> <!--<property name="contentType" value="text/html"/>--> <!--<property name="prefix" value="/WEB-INF/"/>--> <!--<property name="suffix" value=".jsp"/>--> <!--</bean>--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" > <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/"></property> <property name="suffix" value=".html"/> <property name="contentType" value="text/html"></property> </bean></beans>如上所示,当你直接运行的就是/就会访问到ta.html
重定向到控制器
<mvc:view-controller path="/" view-name="redirect:/admin/index"/>
即如果当前路径是/ 则重定向到/admin/index控制器中单纯使用path
<mvc:view-controller path="/ta"/>那么根据我们配置的页面解析器会自动访问的/ta的时候取访问/ta.html
参考:
http://www.cnblogs.com/dflmg/p/6393416.html
http://www.cnblogs.com/caoyc/p/5637894.html
http://blog.csdn.net/hong0220/article/details/39777689
- springmvc mvc:view-controller使用
- springmvc之<mvc:view-controller/>标签使用
- springmvc <mvc:view-controller >
- springMVC <mvc:view-controller />
- springMVC之mvc:view-controller用法
- springMVC-mvc:view-controller path使用方法
- SpringMVC <mvc:view-controller path=""/>标签
- SpringMVC <mvc:view-controller path=""/>标签
- SpringMVC <mvc:view-controller path=""/>标签
- SpringMVC <mvc:view-controller path=""/>标签
- springMVC实现首页的重定向(<mvc:view-controller>以及<mvc:annotation-driven/>标签使用)
- springMVC(8)------mvc:view-controller直接转发页面
- 学习SpringMVC(十二)之mvc:view-controller标签
- spring mvc中mvc:view-controller的使用
- Model-View-Controller (MVC)
- mvc:view-controller
- Model View Controller(MVC)
- mvc:view-controller
- Linux下更换为阿里yum源
- python调用R的方式有用的几个参考文章
- Unity 2D Sprite 一张精灵图片【自动切割(Automatic )】成【不规则的许多个小图片】的步骤
- Wannafly挑战赛1 A-DP
- webstorm 的es6设置之后还是出现红线的解决方式
- springmvc mvc:view-controller使用
- 实验四顺序栈的实现
- ABP学习:领域层创建实体(使用MySql数据库)
- CountDownLatch使用countDown方法来触发其他等待线程再执行的问题
- android AIDL,跨进程通讯
- 为什么Java工具类方法为静态类
- memcache和memcached的区分
- java设计模式---装饰者设计模式
- EDW与维度模型间的抉择