大佬教程收集整理的这篇文章主要介绍了SpringMVC Controll不能将值传递给JSP,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
看起来像带有dispatcherServlet映射的老旧SpringMVC问题。
您已将servlet映射到/,这意味着它将获得其他servlet(包括默认容器一个)无法解析的所有URL。一个常见的问题是,Spring MVCdispatcherServlet将永远不会收到空的URL’/’。
因此,我假设您直接调用index.Jsp文件,而无需先单击控制器。但是然后(当然),@H_197_7@Hello模型变量尚未放入请求属性中,因此无法使用。
怎么修:
为了避免直接打到Jsp文件,好的做法建议将它们放在WEB-INF文件夹下。这样,它们将永远不会由servlet容器作为服务器,并且仅当从WEB-INF /Jsp / index.Jsp下的控制器=> move index.Jsp转发到并且相应地更改@H_197_7@<property name="prefix" value="/WEB-INF/Jsp/"/>JspVIEwResolver配置时才会显示。
然后使用所引用帖子中的一种解决方案。我建议使用以下方式将dispatcherServlet映射到@H_197_7@/*由resourcehttprequestHandler处理的文件夹,并将静态资源移动到该文件夹:
@H_197_7@<mvc:resources mapPing="/resources/**" LOCATIOn="/public-resources/"/>
当您使用xml配置时
我尝试学习springmvc。但是,当我开始时,遇到了一个问题。
我认为这是一个简单的问题,我在互联网上搜索并找到了很多示例,但我没有找到原因,这里是代码。
HomeControll.java
@H_197_7@package cn.qingtianr.controll; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.Annotation.requestMapping; /** * Created by jack on 16-5-20. */ @Controller public class HomeControll { @requestMapping("/") public String index(ModelMap model){ String s = "hhh"; model.addAttribute("Hello",s); return "index"; } }
index.jsp
@H_197_7@<%-- Created by IntelliJ IDEA. User: jack Date: 16-5-20 Time: 下午6:31 To change this template use File | SetTings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>title</title> </head> <body> ${Hello} </body> </html>
web.xml
@H_197_7@<!DOCTYPE web-app PUBLIC "-//Sun Microsystems,Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>Hello</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Hello</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
Hello-servlet.xml
@H_197_7@<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/scheR_658_11845@a/beans" xmlns:xsi="http://www.w3.org/2001/XMLscheR_658_11845@a-instance" xmlns:context="http://www.springframework.org/scheR_658_11845@a/context" xmlns:mvc="http://www.springframework.org/scheR_658_11845@a/mvc" xsi:scheR_658_11845@aLOCATIOn="http://www.springframework.org/scheR_658_11845@a/beans http://www.springframework.org/scheR_658_11845@a/beans/spring-beans.xsd http://www.springframework.org/scheR_658_11845@a/context http://www.springframework.org/scheR_658_11845@a/context/spring-context.xsd http://www.springframework.org/scheR_658_11845@a/mvc http://www.springframework.org/scheR_658_11845@a/mvc/spring-mvc.xsd"> <context:component-scan base-package="cn.qingtianr.controll"/> <mvc:default-servlet-handler/> <mvc:Annotation-driven/> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalresourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
pom.xml
@H_197_7@<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLscheR_658_11845@a-instance" xsi:scheR_658_11845@aLOCATIOn="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.qingtianr</groupId> <artifactId>springmvctest</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>springmvctest Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <spring.version>4.2.5.RELEASE</spring.version> <spring-data.version>1.2.0.RELEASE</spring-data.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> <build> <finalName>springmvctest</finalName> </build> </project>
当我访问index.jsp时,我的浏览器上@H_197_7@${Hello}没有显示not @H_197_7@hhh。也许我得到了一个低级错误,但我真的不知道。
有人可以帮助我吗?
以上是大佬教程为你收集整理的SpringMVC Controll不能将值传递给JSP全部内容,希望文章能够帮你解决SpringMVC Controll不能将值传递给JSP所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。