SpringMVC(四)--处理模型数据

1.处理模型数据

• Spring MVC 提供了以下几种途径输出模型数据:

ModelAndView: 处理方法返回值类型为org.springframework.web.servlet.ModelAndView时(有两个相同的类,注意包名), 方法体即可通过该对象添加模型数据

Map Model: 参数org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map 时,处理方法返回时,Map中的数据会自动添加到模型中。

– @SessionAttributes: 将模型中的某个属性暂存到HttpSession 中,以便多个请求之间可以共享这个属性

– @ModelAttribute: 方法入参标注该注解后, 入参的对象就会放到数据模型中

2. ModelAndView

• 注意包名:org.springframework.web.servlet.ModelAndView

• 控制器处理方法的返回值如果为 ModelAndView, 则其包含视图信息,也包含模型数据信息

    SpringMVC把ModelAndView的model中数据放入到request域对象中

        构造函数可以接受 视图或者模型信息

• 添加模型数据:

    – MoelAndView addObject(String attributeName, ObjectattributeValue)

    – ModelAndView addAllObject(Map<String, ?> modelMap)

• 设置视图:

    – void setView(View view)

    – void setViewName(String viewName)

例子:

private static final String SUCCESS = "success";

@RequestMapping("/testModelAndView")

public ModelAndView testModelAndView(){

    String viewName = SUCCESS;

    ModelAndView modelAndView = new ModelAndView(viewName);

    modelAndView.addObject("time", new Date());

    return modelAndView;

}

success.jsp文件中获取:

${ requestScope.time}

3.Map 及 Model

• Spring MVC 在内部使用了一个org.springframework.ui.Model 接口存储模型数据

• 具体步骤

– Spring MVC 在调用方法前会创建一个隐含的模型对象作为模型数据的存储容器。

如果方法的参数 Map Model ,Spring MVC 会将隐含模型的引用传递给这些参数。在方法体内,开发者可以通过这个入参对象访问到模型中的所有数据,也可以向模型中添加新的属性数据

    Map:(主要是Map,其他了解)

private static final String SUCCESS = "success";

@RequestMapping("/testMap")

public String testMap(Map<String , Object> map){

    map.put("name", Arrays.asList("Tom","Jerry","Mike"));

    return SUCCESS;

}

在success.jsp文件中获取


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值