zoukankan      html  css  js  c++  java
  • 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");
        }

  • 相关阅读:
    eclipse maven POM 第一行提示异常Could not initialize class org.apache.maven.plugin.war.util.WebappStructureSerializer
    Tomcat搭建HTTP文件下载服务器
    Hui datetimepicker 插件不显示左右箭头问题
    【Python】拷贝&列表
    【Python】Python赋值引用、浅拷贝、深拷贝
    【Python】列表的复制
    【Python】电脑安装了多个版本Python,如何切换;
    【Python】定义类、创建类实例
    【Python】白名单方式净化
    c++ 对外提供头文件的模式
  • 原文地址:https://www.cnblogs.com/wcyBlog/p/4075925.html
Copyright © 2011-2022 走看看