• SpringMVC的注解


    @RequestMapping

    指定请求的路径

    • path :路径

    • method:请求的方法。{RequestMethod.GET,RequestMethod.POST}

    • params:指定请求中的参数。params = {"username"}

    • headers:用于指定限制请求消息头的条件。headers ={"Accept"} 表示请求头要有Accept参数

    @RequestParam

    把请求中的指定名称的参数传递给控制器中的形参赋值. testRequestParam(@RequestParam(name = "name",required = true) String username)

    • value:请求参数中的名称

    • required:请求参数中是否必须提供此参数,默认值是true,必须提供

    @RequestBody注解

    用于获取请求体的内容(注意:get方法不可以)saveUser(@RequestBody String body)

    • required:是否必须有请求体,默认是true

    @PathVariable

    拥有绑定url中的占位符的。例如:url中有/delete/{id},{id}就是占位符.

    @RequestMapping("/testPathVariable/{id}")
      public String testPathVariable(@PathVariable("id") String id){}
    
    • value:指定url中的占位符名称

    @RequestHeader

    获取请求头中的参数

    @RequestMapping("/testRequestHeader")
        public String testRequestHeader(@RequestHeader("Cookie") String header){
            System.out.println(header);
            return "success";
        }
    

    @CookieValue

    用于获取指定cookie的名称的值

    @RequestMapping("/testCookieValue")
        public String testCookieValue(@CookieValue("JSESSIONID") String header){
            System.out.println(header);
            return "success";
        }
    

    @ModelAttribute

        /*
            ModelAttribute注解
            作用
                出现在方法上:表示当前方法会在控制器方法执行前线执行。
                出现在参数上:获取指定的数据给参数赋值。
            应用场景
                当提交表单数据不是完整的实体数据时,保证没有提交的字段使用数据库原来的数据。
         */
        @RequestMapping("/testModelAttribute")
        public String testModelAttribute(@ModelAttribute("abc") User user){
            System.out.println(user);
            return "success";
        }
    
        /**
         * ModelAttribute注解
         *  会在RequestMapping注解执行之前执行
         */
    //    @ModelAttribute
        public void showUser(String uname, Map<String,User> map){
            User user = new User();
            user.setUname(uname);
            user.setAge(18);
            user.setDate(new Date());
            map.put("abc",user);
            System.out.println("showUser方法执行了。。。"+user);
    
        }
    

    @SessionAttributes

    把值存入session中

    @Controller
    @RequestMapping("sessionAttribute")
    @SessionAttributes(names = {"name"})//把name的值存到session域对象中一份
    public class SessionAttributeController {
    
        /**
         * 存值
         * @param model
         * @return
         */
        @RequestMapping("testPut")
        public String testPut(Model model){
            String name = "张三";
            model.addAttribute("name",name);
            System.out.println("put:" + name);
            return "success";
        }
    
        /**
         * 取值
         * @param modelMap
         * @return
         */
        @RequestMapping("testGet")
        public String testGet(ModelMap modelMap){
            String name = (String) modelMap.get("name");
            System.out.println("get:" + name);
            return "success";
        }
    
        /**
         * 删除
         * @param status
         * @return
         */
        @RequestMapping("testDel")
        public String testDel(SessionStatus status){
            status.setComplete();
            System.out.println("delete session");
            return "success";
        }
    }
    
    --------------- 我每一次回头,都感觉自己不够努力,所以我不再回头。 ---------------
  • 相关阅读:
    idea本地安装 lombok插件
    win7系统开机启动出现蓝屏,提示BAD_SYSTEM_CONFIG_INFO
    使用mini-textbox控件时 不能获取value值
    为表格动态添加一行,miniui组件无效
    miniui表格load数据成功后,回调函数,其中setData要用如下方法
    路径1
    路径
    dubbo spring bean id冲突
    @Transactional spring 配置事务 注意事项
    Spring事务管理只对出现运行期异常进行回滚
  • 原文地址:https://www.cnblogs.com/zjw-blog/p/13955691.html
Copyright © 2020-2023  润新知