【初识Spring MVC】问题(1)jsp界面获取不到controller传过来的值

初学者在使用IntelliJ IDEA和Maven搭建Spring MVC项目时遇到问题,JSP页面无法显示从Controller传递的Hello World信息。配置和依赖管理已按网络教程完成,但问题依然存在。

刚刚接触Spring MVC,通过网络上的资料进行了配置、测试,但是完成后,等待已久的Hello World 始终无法显示。

1.开发工具:Intellij Idea14.0.3,使用maven管理依赖

2.项目目录如下:


3.关于相关的配置信息可以在网络上搜集相关资料(其实是我自己还没有弄清楚。。。)

4.问题:index.jsp代码如下
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
  <head>
    <title>hello world</title>
  </head>
  <body>
    <h1>${message}</h1>
  </body>
</html>

Hello.java 代码如下:
@Controller
@RequestMapping("/hello")
public class Hello {

    @RequestMapping("/hi.do")
    public String  HelloWorld()
    {
        ModelMap mv=new ModelMap();
        mv.addAttribute("message","Hello World");
        return "index";
    }
}

项目启动后,index.jsp 获取不到message的内容
5.问题产生原因 是  因为ModelMap 在函数内实例化后没有被返回,仅仅作为局部变量存在于函数中
6.问题解决:
/**
 * Created by Sun on 2015/4/1.
 */
@Controller
@RequestMapping("/hello")
public class Hello {

    @RequestMapping("/hi.do")
    public String  HelloWorld(ModelMap mv)
    {

        mv.addAttribute("message","Hello World");
        
        return "index";
    }
}
spring会自动实例化ModelMap,并将其返回,然后jsp就可以获取到message内容了

(注:ModelMap、Model、ModelAndView碰到此类问题,解决方法类似!)


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值