论坛首页 Java企业应用论坛

spring的配置文件中mvc:view-controller path 怎么使用

浏览 26679 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-03-17  
<mvc:view-controller path="" view-name=""/>这个的具体怎么使用,我在网上找到很有限的几个网页还是不太说的清楚,很多就是一句话就完了。根本不知道具体使用方法,麻烦指教一下
   发表时间:2013-03-18  
都没有人用过这个方法吗?
0 请登录后投票
   发表时间:2013-03-19  
两种用法

1、重定向
<mvc:view-controller path="/" view-name="redirect:/admin/index"/>
即如果当前路径是/ 则重定向到/admin/index

2、view name
<mvc:view-controller path="/" view-name=admin/index"/>
如果当前路径是/ 则交给相应的视图解析器直接解析为视图

<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/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

则得到的视图时 /WEB-INF/jsp/admin/index.jsp

2 请登录后投票
   发表时间:2013-03-21  
jinnianshilongnian 写道
两种用法

1、重定向
<mvc:view-controller path="/" view-name="redirect:/admin/index"/>
即如果当前路径是/ 则重定向到/admin/index

2、view name
<mvc:view-controller path="/" view-name=admin/index"/>
如果当前路径是/ 则交给相应的视图解析器直接解析为视图

<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/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

则得到的视图时 /WEB-INF/jsp/admin/index.jsp


比如我不想进controller直接 href="a.jsp",我应该怎么使用 页面使用 href="/admin/a.jsp",然后在<mvc:view-controller path="/admin/a.jsp" view-name="admin/a"/> 是这样使用吗?我这么试过不成功啊,在XML配置里面也这样写了<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/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>----还是不成功
0 请登录后投票
   发表时间:2013-03-21  
jsp的默认会交给 如tomcat/conf/web.xml中的 jsp servlet处理

   <servlet>
        <servlet-name>jsp</servlet-name>
        <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
        <init-param>
            <param-name>fork</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>xpoweredBy</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>jsp</servlet-name>
        <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>jsp</servlet-name>
        <url-pattern>*.jspx</url-pattern>
    </servlet-mapping>


除非你的spring也拦截*.jsp 但这样所有jsp都交给spring处理了   所以你的用法不对
0 请登录后投票
   发表时间:2013-05-02   最后修改:2013-05-02
tianzhijie11 写道
jinnianshilongnian 写道
两种用法

1、重定向
<mvc:view-controller path="/" view-name="redirect:/admin/index"/>
即如果当前路径是/ 则重定向到/admin/index

2、view name
<mvc:view-controller path="/" view-name=admin/index"/>
如果当前路径是/ 则交给相应的视图解析器直接解析为视图

<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/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

则得到的视图时 /WEB-INF/jsp/admin/index.jsp


比如我不想进controller直接 href="a.jsp",我应该怎么使用 页面使用 href="/admin/a.jsp",然后在<mvc:view-controller path="/admin/a.jsp" view-name="admin/a"/> 是这样使用吗?我这么试过不成功啊,在XML配置里面也这样写了<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/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>----还是不成功

 

不想进controller,可以在spring-mvc.xml中配置静态访问路径

<!-- 访问静态资源文件  -->
	<mvc:resources mapping="/images/**" location="/images/" cache-period="31556926"/>

 像这样,jsp文件若放在静态路径/images下,可以直接访问,而不经过controller。

 

0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics