• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

springMVC如何将controller中数据传递到jsp页面

java 搞代码 4年前 (2022-01-05) 40次浏览 已收录 0个评论

这篇文章主要介绍了springMVC如何将controller中数据传递到jsp页面,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

1> 将方法的返回值该为ModelAndView在返回时,将数据存储在ModelAndView对象中如:

 newModelAndView("/WEBINF/jsp/showData.jsp","message",message)

其中第一个参数为url,第二个参数为要传递的数据的key,第三个参数为数据对象。

在这里要注意的是 数据是默认被存放在request中的。

示例:

 @RequestMapping(value="/mad/showData_1.do") public ModelAndView showData_1(){ String message = "这个是要传递的数据"; /*其中第一个参数为url,第二个参数为要传递的数据的key,第三个参数为数据对象。在这里要注意的是:数据是默认被存放在request中的。*/ return new ModelAndView("/WEB-INF/jsp/showData.jsp","message",message); }

前台页面获取方式:

 request:${requestScope.message}

2> 可以在类的前面添加注解

 @SessionAttributes({“message”,”user”})

这个注解可以设置对应的model中参数也会在session中存储一份。该注解中的参数为一个集合,可以写多个,如上面的例子,其中message和user都是存储的数据的key.

示例程序:

代码如下:
@SessionAttributes({“message”,”user”})   //modelAndView中的对应的数据也会在session中存储一份

页面获取:

 session:${sessionScope.message}<br />

3 > 数据modelAndView返回一个集合

该处理方式和上面的处理方式一直,因为modelAndView接受的数据类型是Object的,集合也是一样的处理方式

示例:

 //使用modelAndView对象将数据传递到前台。 //传递多个参数(不同类型的) @RequestMapping(value="/mad/showData_2.do") public ModelAndView showData_2(){ System.out.println("showData_2"); String message = "这个是要传递的数据"; User user = new User("张三", 12, new Date()); List us= new ArrayList(); us.add(new User("张三", 12, new Date())); us.add(new User("张四", 13, new Date())); us.add(new User("张五", 14, new Date())); ModelAndView mad = new ModelAndView("/WEB-INF/jsp/showData.jsp"); //将数据存入modelMap mad.addObject("message", message); mad.addObject(user);//默认为类名的首字母小写 mad.addObject("users", us); return mad; } 

前台页面获取方式:

 request:${requestScope.message}<br /> ${u.name }-${u.age }-${u.birth }<br />

4、使用modelAndView传递多个参数。

可以通过ModelAndView的mad.addObject(“message”,message);方法设置参数。

该方法中第一个参数为数据的key,第二个参数为数据对象。

也可以使用mad.addObject(user);方法

该方法中数据的参数为数据对象,数据的key为该对象的类的类名 (其中首字母小写)。

5、使用ModelMap传递多个数据到jsp中。

在方法的参数列表中添来源[email protected]搞@^&代*@码)网加形参 ModelMap map,spring 会自动创建ModelMap对象。

然后调用map的put(key,value)或者addAttribute(key,value)将数据放入map中,spring会自动将数据存入request。

示例:

 //使用modelMap对象将数据传递到前台。 //传递多个参数(不同类型的) @RequestMapping(value="/mad/showData_3.do") public String showData_3(ModelMap map){ System.out.println("showData_3"); String message = "这个是要传递的数据"; User user = new User("张三", 12, new Date()); List us= new ArrayList(); us.add(new User("张三", 12, new Date())); us.add(new User("张四", 13, new Date())); us.add(new User("张五", 14, new Date())); //将数据存入modelMap map.put("message", message); map.addAttribute("user", user); map.put("users", us); return"/WEB-INF/jsp/showData.jsp"; } 

页面调用:

 request:${requestScope.message}<br /> session:${sessionScope.message }<br /> application:${applicationScope.message}<br /><hr /><h1>ModelMap中的数据</h1> ${requestScope.message}<br /> ${requestScope.user.name}<br /><p>列表</p> ${u.name }-${u.age }-${u.birth }<br />

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持gaodaima搞代码网

以上就是springMVC如何将controller中数据传递到jsp页面的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:springMVC如何将controller中数据传递到jsp页面

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址