@ModelAttribute注解的使用介绍

花生 可爱的博主

时间: 2021-04-18 阅读: 92 字数:1139

{}
被标注了@ModelAttribute的方法都会在Controller的目标方法之前执行。

@ModelAttribute三个常见作用:

  1. 被标注了@ModelAttribute的方法都会在Controller的目标方法之前执行。
  2. 目标方法的参数(JavaBean对象)会先从隐含模型中获取值传入(如果客户端有传就会覆盖)。
     /* 默认情况下SpringMVC会先从隐含模型中,以参数的类名,转成首字母小写
      * Book  ===>>>>  book ,去从隐含模型中取值,并传入参数中
      
    
  3. 被标注在参数上,参数值会按照指定的key从隐含模型中获取值。 public String test2( @ModelAttribute("bookAbc") Book book) { 会从隐含模型中以bookAbc做为key去取值并注入到方法的参数中
    @ModelAttribute
    public void modelAttributeFun( Map<String, Object> map ) {
        System.out.println("modelAttributeFun 方法");
        // 往隐含模型中保存数据
        map.put("bookAbc", new Book(99, "隐含模型中的数据"));
        
    }

    @RequestMapping("/test2")
    public String test2( @ModelAttribute("bookAbc") Book book) {
        /* 默认情况下SpringMVC会先从隐含模型中,以参数的类型,转成首字母小写
         * Book  ===>>>>  book ,去从隐含模型中取值,并传入参数中
         *  */
        System.out.println("test2 方法调用了!!!!");

        System.out.println("参数book的值是:" + book);

        return "showData";
    }
本文章网址:https://www.sjxi.cn/detil/cc6e9bd1f09f4e78b1da56daa6557b50

最新评论

当前未登陆哦
登陆后才可评论哦

湘ICP备2021009447号

×

(穷逼博主)在线接单

QQ: 1164453243

邮箱: abcdsjx@126.com

前端项目代做
前后端分离
Python 爬虫脚本
Java 后台开发
各种脚本编写
服务器搭建
个人博客搭建
Web 应用开发
Chrome 插件编写
Bug 修复