SpringMVC笔记一:简介+在写Controller时的一些组件介绍和注意点

SpringMVC笔记一:在写Controller时的一些组件介绍和注意点

介绍

由来:基于spring框架基础之上开发的一个全新的框架
作用:可以作为web开发时的控制器框架
目的:为了使现有项目中使用的spring框架,在mvc架构中存在自己的位置,因此开发了一个springmvc框架;
mvc

  • m:model模型,即service+dao+entity----> jdbc|mybatis;
  • v:view视图,webapp页面----->jsp(动态网页)|html(静态网页)
  • c:controller,struts2中的action----->struts2|servlet|springmvc

引言

典型的mvc框架,控制器框架,替换了struts2框架

优势

  1. spring的流行程度非常高,springmvc可以与其进行无缝整合;
  2. springmvc的运行效率高于struts2;
  3. springmvc推荐使用注解式开发,其注解式开发更加高效,更加灵活;
/**
     * request.getParameter("name")
     *
     * 当发送请求的时候,找到对应的处理方法之后,会根据参数的名称从request中获取对应的参数值,并封装到方法中
     * 此时要求,方法的名字和url中参数的名字必须一致,如果不一致,设置不成功
     *
     * 如果设置的值不同,同时又想让参数获取到对应的属性值,可以通过@RequestParam来使用
     * 经常跟@PathVariable混淆,主要注意,两个注解有不同的用处
     * 次注解的参数:
     *      value:获取的参数值
     *      required:表示当前属性值是否是必须存在的,默认值是true,表示请求中必须要包含此参数,如果没有,400,bad request
     *      defaultValue:如果传递参数了,那么使用传递进来的参数,如果没有使用默认值
     * @param name
     * @return
     */
    @RequestMapping("/testRequest")
    public String testRequest(@RequestParam(value = "username",required = false,defaultValue = "lisi") String name){
        System.out.println(name);
        return "success";
    }

    /**
     * 获取请求头信息:
     * 通过@RequestHeader注解来表示
     *      request.getHeader("User-Agent")
     *
     *      同时也包含了几个参数
     *         value:
     *         required:
     *         defaultValue:
     *         同@RequestParam
     * @param userAgent
     * @return
     */
    @RequestMapping("/testRequestHeader")
    public String testRequestHeader(@RequestHeader("User-Agent") String userAgent){
        System.out.println(userAgent);
        return "success";
    }

    /**
     * 获取cookie中的值,使用@CookieValue注解
     *      Cookie[] cookies = request.getCookies();
     *       同时也包含了几个参数
     *      *         value:
     *      *         required:
     *      *         defaultValue:
     *      *         同@RequestParam
     * @param jsid
     * @return
     */
    @RequestMapping("/testCookie")
    public String testCookie(@CookieValue("JSESSIONID") String jsid){
        System.out.println(jsid);
        return "success";
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值