zoukankan      html  css  js  c++  java
  • SpringMVC中的Model和ModelAndView的区别

    1.主要区别

    Model是每次请求中都存在的默认参数,利用其addAttribute()方法即可将服务器的值传递到jsp页面中;
    ModelAndView包含model和view两部分,使用时需要自己实例化,利用ModelMap用来传值,也可以设置view的名称

    2.例子

    1)使用Model传值

    @RequestMapping(value="/list-books")  
        private String getAllBooks(Model model){  
            logger.error("/list-books");  
            List<Book> books= bookService.getAllBooks();  
            model.addAttribute("books", books);  
            return "BookList";  
        }  

    在jsp页面利${books}即可取出其中的值


    2)使用ModelAndView传递值有两种方法,不同方法在jsp页面的取值方式不同,同时设置了view的名称

    public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response,
                                             Object handler, Exception ex) {
            LibraryException le=null;
            if(ex instanceof LibraryException){
                le=(LibraryException)ex;
            }else{
                le=new LibraryException("系统未知异常!");
            }
     
            ModelAndView modelAndView=new ModelAndView();
            modelAndView.addObject("exception",le.getMessage());
            modelAndView.getModel().put("exception",le.getMessage());
            modelAndView.setViewName("error");
     
            return modelAndView;
        }

    jsp中${requestScope.exception1}可以取出exception1的值;
    jsp中${exception2}可以取出exception2的值。

  • 相关阅读:
    Linux命令集
    Java实现 LeetCode 648 单词替换(字典树)
    pci常用命令
    pci 设备 vendor device subsystem 驱动
    手动绑定驱动 + drivers_probe + rescan
    找不到网卡 pci probe function not called
    primary + secondary + malloc + rte_memzone_reserve
    gdb 打印结构体
    rte_fbarray_init
    DPDK 内存管理---malloc_heap和malloc_elem
  • 原文地址:https://www.cnblogs.com/shamo89/p/9948694.html
Copyright © 2011-2022 走看看