• Spring MVC 的请求参数获取的几种方法


    通过@PathVariabl注解获取路径中传递参数
    JAVA
    1     @RequestMapping(value = "/{id}/{str}")
    2     public ModelAndView helloWorld(@PathVariable String id,
    3             @PathVariable String str) {
    4         System.out.println(id);
    5         System.out.println(str);
    6         return new ModelAndView("/helloWorld");
    7     }
    用@ModelAttribute注解获取POST请求的FORM表单数据
    JSP
    1 <form method="post" action="hao.do">
    2 a: <input id="a" type="text"   name="a"/>
    3 b: <input id="b" type="text"   name="b"/>
    4 <input type="submit" value="Submit" />
    5 </form>

    JAVA pojo
    1 public class Pojo{
    2     private String a;
    3     private int b;
    4    
    5

    JAVA controller
    1 @RequestMapping(method = RequestMethod.POST)
    2     public String processSubmit(@ModelAttribute("pojo") Pojo pojo) {
    3        
    4         return "helloWorld";
    5     }
    直接用HttpServletRequest获取
    JAVA
    1     @RequestMapping(method = RequestMethod.GET)
    2     public String get(HttpServletRequest request, HttpServletResponse response) {
    4         System.out.println(request.getParameter("a"));
    5         return "helloWorld";
    6     }

    用注解@RequestParam绑定请求参数a到变量a
    当请求参数a不存在时会有异常发生,可以通过设置属性required=false解决,
    例如: @RequestParam(value="a", required=false)
    JAVA
    1     @RequestMapping(value = "/requestParam", method = RequestMethod.GET)
    2     public String setupForm(@RequestParam("a") String a, ModelMap model) {
    3         System.out.println(a);
    4         return "helloWorld";}

    用JSR-303校验获取参数也可以!

    用@Valid获取参数也可以

    @Valid User User//实体设置+类+类的引用 直接将页面传过来的user对象中的信息封装到里面去了

        @RequestMapping(value="register",method=RequestMethod.POST)
        public ModelAndView userRegister(@Valid User user,HttpServletRequest request,HttpServletResponse response){
            HttpSession session = request.getSession();
            user.setUsername(user.getUsername());
            user.setPassword(user.getPassword());
            user.setClassroom(user.getClassroom());
            user.setPhone(user.getPhone());
            user.setAddress(user.getAddress());
            session.setAttribute("model", user);
            userService.AddUser(user);
            return new ModelAndView("index");
        }

  • 相关阅读:
    在Workload Automation中实现suspend分析
    Linux kernel的中断子系统之(九):tasklet
    Linux kernel的中断子系统之(八):softirq
    Linux kernel的中断子系统之(七):GIC代码分析
    Linux kernel的中断子系统之(六):ARM中断处理过程
    Linux kernel的中断子系统之(五):驱动申请中断API
    Linux kernel的中断子系统之(四):High level irq event handler
    Linux kernel的中断子系统之(三):IRQ number和中断描述符
    Linux kernel的中断子系统之(二):IRQ Domain介绍
    Linux kernel的中断子系统之(一):综述
  • 原文地址:https://www.cnblogs.com/wcyBlog/p/4075925.html
Copyright © 2020-2023  润新知