精华内容
下载资源
问答
  • ModelMap

    2019-09-28 14:07:54
    首先介绍ModelMap[Model]和ModelAndView的作用 Model是一个接口, 其实现类为ExtendedModelMap,继承了ModelMap类。ModelMapModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的...

    首先介绍ModelMap[Model]和ModelAndView的作用

    Model 是一个接口, 其实现类为ExtendedModelMap,继承了ModelMap类。 
    ModelMap
    ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。通过以下方法向页面传递参数:
    addAttribute(String key,Object value);
    在页面上可以通过el变量方式$key或者bboss的一系列数据展示标签获取并展示modelmap中的数据。
    modelmap本身不能设置页面跳转的url地址别名或者物理跳转地址,那么我们可以通过控制器方法的返回值来设置跳转url地址别名或者物理跳转地址。

    就是放东西的,控制器得到的东西,放到这个东西然后,展示页面

    转载于:https://www.cnblogs.com/superAnny/p/6699887.html

    展开全文
  • Model、ModelMap和ModelAndView的使用详解

    万次阅读 多人点赞 2018-03-25 12:40:00
    3.ModelMap方法 ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可, 他的作用类似于request对象的setAttribute方法的作用: 用来在一个请求过程中...

    1.前言

    最近SSM框架开发web项目,用得比较火热。spring-MVC肯定用过,在请求处理方法可出现和返回的参数类型中,最重要就是Model和ModelAndView了,对于MVC框架,控制器Controller执行业务逻辑,用于产生模型数据Model,而视图View用于渲染模型数据。 使用Model和ModelAndView这两个类在spring的视图解析时作用以及区别。 这两者之间有着很大的区别,具体就表现在 Model只是用来传输数据的,并不会进行业务的寻址。ModelAndView 却是可以进行业务寻址的,就是设置对应的要请求的静态文件,这里的静态文件指的是类似jsp的文件。 其次,两者还有一个最大的区别,那就是Model是每一次请求可以自动创建,但是ModelAndView 是需要我们自己去new的。

    2.model方法

    注意:如果在控制层上的方法声明了注解@ResponseBody ,则会直接将返回值输出到页面。 Model 是一个接口, 其实现类为ExtendedModelMap,继承了ModelMap类。
    public class ExtendedModelMap extends ModelMap implements Model
    

    一般来说,可以用model来接收各种类型的数据,如果使用来接收一组数据List 》》那么这个时候的model实际上是ModelMap。

    3.ModelMap方法

    ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,
    他的作用类似于request对象的setAttribute方法的作用: 用来在一个请求过程中传递处理的数据
    ModelMap或者Model通过addAttribute方法向页面传递参数.
    其中addAttribute方法参数有多种方式:
    常用的有:写在java代码中

    public ModelMap addAttribute(String attributeName, Object attributeValue){...}
    public ModelMap addAttribute(Object attributeValue){...}
    public ModelMap addAllAttributes(Collection<?> attributeValues) {...}
    public ModelMap addAllAttributes(Map<String, ?> attributes){...}
    

    然后在jsp页面上可以通过el表达式语言$attributeName或者是C标签库下的方法,来获取并展示modelmap中的数据。
    modelmap本身不能设置页面跳转的url地址别名或者物理跳转地址.
    那么我们可以通过控制器方法的字符串返回值来设置跳转url地址别名或者物理跳转地址。

    4.ModelAndView方法

    添加模型数据用addObject; 设置视图setViewName; ModelAndView 对象有两个作用: (1). 设置转向地址,这也是ModelAndView和ModelMap的主要区别.设置方式如下所示:
    ModelAndView view = new ModelAndView("path:student");
    

    或者通过setViewName方式:

    public void setViewName(String viewName){...}
    

    (2). 将控制器方法中处理的结果数据传递到结果页面,也就是把在结果页面上需要的数据放到ModelAndView对象中即可,其作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。通过以下方法向页面传递参数:

    public ModelAndView addObject(String attributeName, Object attributeValue){...}
    public ModelAndView addObject(Object attributeValue){...}
    

    在jsp中:也是可以通过el表达式语言 a t t r i b u t e N a m e 或 者 C 标 签 库 的 attributeName或者C标签库的 attributeNameC{name } 来获取并展示ModelAndView中的数据。

    5.使用示例

    (1) Model 或者 ModelMap Model 和 ModelMap 的实例都是spirng mvc框架来自动创建并作为控制器方法参数传入,用户无需自己创建。 而且需要return 返回指定的页面路径.

    在控制层的java代码中写入:

    	//传值方法一
    	@RequestMapping("listCategory2")
    	public String listCategory2(Model model) {
    		
    		// 接收查询的信息
    		List<Category> cs2= categoryService.list();
    		// 封装了查询的数据
    		model.addAttribute("test", cs2);
    		//重要!!需要给出返回model跳转的路径
    		return "listCategory2";
    	}
    

    然后在jsp页面中写入:

    <!-- 获取值的时候,对应的是addAttribute的第一个参数!取了个别名为c-->
        <c:forEach items="${test }" var="c" varStatus="st">
            <tr>
                <td>${c.id}</td>
                <td>${c.name}</td>
            </tr>
        </c:forEach>
    

    图示java:
    java代码
    jsp:
    jsp代码

    效果:
    效果图

    数据列表全部获取到!

    (2) ModelAndView
    ModelAndView的实例是需要我们手动new的,这也是和ModelMap的一个区别。
    而且,ModelAndView 可以自己寻址,只需要return 返回其对象即可。

    在控制层的java代码中写入:

    //传值方法二:使用ModelAndView
    	//当url处于这个时,由listCategory方法来处理请求
    	@RequestMapping("listCategory")
    	public ModelAndView listCategory(){
    		//创建一个模型视图对象
    		ModelAndView mav = new ModelAndView();
    		//获取到查询的数据
    		List<Category> cs= categoryService.list();
    		
    		// //将数据放置到ModelAndView对象view中,第二个参数可以是任何java类型
    		mav.addObject("cs", cs);
    		// 放入jsp路径
    		mav.setViewName("listCategory");
    		 //返回ModelAndView对象mav
    		return mav;
    	}
    

    在jsp页面中:

     <!-- 使用c标签库,循环遍历出数据 ,命名为c-->
        <c:forEach items="${cs}" var="c" varStatus="st">
            <tr>
                <td>${c.id}</td>
                <td>${c.name}</td>
            </tr>
        </c:forEach>
    

    图示:
    这里写图片描述

    jsp:
    这里写图片描述

    效果:
    这里写图片描述

    数据列表全部获取到!

    以上就是两种不同的方式取值传值,从上面我们可以看得出来这两个之间还是有一定的区别的,记住有一个需要返回对象,一个需要返回的是地址路径。


    You got a dream, you gotta protect it.
    如果你有梦想的话,就要去捍卫它 。 ——《当幸福来敲门》

    展开全文
  • 近来发现controller里有不同的处理返回数据的方式,其中包括ModelMap不明白是如何处理数据返回的,所以在此记录如下:1.说到如何处理返回数据,要涉及到jsp的九大内置对象及其作用域2.还要涉及到jquery的ajax请求...

    近来发现controller里有不同的处理返回数据的方式,其中包括ModelMap不明白是如何处理数据返回的,所以在此记录如下:

    1.说到如何处理返回数据,要涉及到jsp的九大内置对象及其作用域

    2.还要涉及到jquery的ajax请求方法

    ModelMap是什么

    ModelMap实现了Map接口,包含Map方法,addAttribute方法,addAttributes方法。在视图层可以通过reauest来找到ModelMap的数据。

    ModelMap的使用

    @RequestMapping("/qryHHGoodsVolumeByTime")

    public void qryHHGoodsVolumeByTime(HttpServletRequest request, ModelMap map){

    logger.debug("MultimodalTransportController -- qryHHGoodsTypeByTime");

    String startDate = StringUtils.trimToEmpty(request.getParameter("startDate"));

    String endDate = StringUtils.trimToEmpty(request.getParameter("endDate"));

    map.addAttribute("HHVOLUME_DATA", multimodalTransportService.qryHHGoodsVolumeByTime(startDate, endDate));

    map.addAttribute("MONTHDATA_LIST", multimodalTransportService.qryMonthDataListByTime(startDate, endDate));

    map.addAttribute("SUCCESS", true);

    }

    使用分析

    因为ModelMap是存放在视图层的request里面的全局变量,容易造成异常,所以不建议使用这种方式。

    替代方式

    不再在void方法里面将数据塞到modelMap对象里面,而是直接新建返回一个Map对象。

    @RequestMapping("/qryHHGoodsVolumeByTime")

    public Map qryHHGoodsVolumeByTime(HttpServletRequest request, ModelMap modelMap){

    logger.debug("MultimodalTransportController -- qryHHGoodsTypeByTime");

    String startDate = StringUtils.trimToEmpty(request.getParameter("startDate"));

    String endDate = StringUtils.trimToEmpty(request.getParameter("endDate"));

    Map map=new LinkedHashMap();

    map.addAttribute("HHVOLUME_DATA", multimodalTransportService.qryHHGoodsVolumeByTime(startDate, endDate));

    map.addAttribute("MONTHDATA_LIST", multimodalTransportService.qryMonthDataListByTime(startDate, endDate));

    map.addAttribute("SUCCESS", true);

    return map;

    }

    展开全文
  • Spring中Model,ModelMap以及ModelAndView之间的区别

    万次阅读 多人点赞 2017-07-15 21:54:33
    1.场景分析 在许多实际项目需求...2.三者区别①ModelModel是一个接口,它的实现类为ExtendedModelMap,继承ModelMap类public class ExtendedModelMap extends ModelMap implements Model1②ModelMapModelMap继承Lin...

    1.场景分析

        在许多实际项目需求中,后台要从控制层直接返回前端所需的数据,这时Model大家族就派上用场了。

    2.三者区别

    ①Model

    Model是一个接口,它的实现类为ExtendedModelMap,继承ModelMap类

    public class ExtendedModelMap extends ModelMap implements Model
    • 1

    ②ModelMap

    ModelMap继承LinkedHashMap,spring框架自动创建实例并作为controller的入参,用户无需自己创建

    public class
    展开全文
  • ModelMap的用法

    2019-03-28 22:39:16
    ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。...
  • modelMap 和modelAndView

    2017-08-04 11:21:24
    modelMap 和modelAndView
  • JS获取ModelMap

    2021-02-27 15:40:05
    public String edit(@PathVariable("id") String id, ModelMap mmap) { UserInfo userInfo = userInfoService.selectuserInfoById(id); mmap.put("userInfo", userInfo); return prefix + "/e.
  • ModelMap org.springframework.ui.ModelMap

    千次阅读 2018-03-19 15:10:00
    ModelMap实现了map接口,可以在其中存放属性,作用域同request,同时可与@SessionAttributes联合使用,把数据放入到session中去, 下面这个示例,我们可以在ModelMap中放入数据,然后在forward后的页面上显示这些...
  • 主要介绍了jsp 显示springmvc modelmap传递的对象详细介绍的相关资料,具有一定的参考价值,需要的朋友可以参考下
  • Spring MVC的Model和ModelMap使用.pdf
  • ModelMap和ModelAndView

    2016-11-30 11:36:57
    ModelMap和ModelAndView的作用 ModelMap ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribute方法的作用,...
  • Model ModelMap ModelAndView

    2019-10-05 12:23:40
    如果方法的入参为ModelMap,Model,Map类型,Spring MVC会将隐含模型的引用传递给这些入参。在方法体内,开发者可以通过这个入参对象访问到模型中的所以数据,也可以向模型中添加新的属性数据。 三种方式处理模型...
  • Model_ModelMap_Map

    千次阅读 2019-07-28 23:41:39
    Model_ModelMap_Map
  • 原文地址 ...首先介绍ModelMap和ModelAndView的...ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribut

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,017
精华内容 9,206
关键字:

modelmap