Java Spring Controller 获取请求参数的几种方法

技术交流群:233513714

 1、直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交。若"Content-Type"="application/x-www-form-urlencoded",可用post提交

url形式:http://localhost:8080/SSMDemo/demo/addUser1?username=lixiaoxi&password=111111 提交的参数需要和Controller方法中的入参名称一致。  

/**
  * 1.直接把表单的参数写在Controller相应的方法的形参中
  * @param username
  * @param password
  * @return
  */
 @RequestMapping("/addUser1")
 public String addUser1(String username,String password) {
   System.out.println("username is:"+username);
   System.out.println("password is:"+password);
   return "demo/index";
 }

2、通过HttpServletRequest接收,post方式和get方式

/**
  * 2、通过HttpServletRequest接收
  * @param request
  * @return
  */
 @RequestMapping("/addUser2")
 public String addUser2(HttpServletRequest request) {
   String username=request.getParameter("username");
   String password=request.getParameter("password");
   System.out.println("username is:"+username);
   System.out.println("password is:"+password);
   return "demo/index";
 }

3、通过一个bean来接收,post方式和get方式

/**
 * 3、通过一个bean来接收
 * @param user
 * @return
 */
@RequestMapping("/addUser3")
public String addUser3(UserModel user) {
  System.out.println("username is:"+user.getUsername());
  System.out.println("password is:"+user.getPassword());
  return "demo/index";
}

4、使用@ModelAttribute注解获取POST请求的FORM表单数据

/**
   * 4、使用@ModelAttribute注解获取POST请求的FORM表单数据
   * @param user
   * @return
   */
  @RequestMapping(value="/addUser5",method=RequestMethod.POST)
  public String addUser5(@ModelAttribute("user") UserModel user) {
    System.out.println("username is:"+user.getUsername());
    System.out.println("password is:"+user.getPassword());
    return "demo/index";
  }

5、用注解@RequestParam绑定请求参数到方法入参 

当请求参数username不存在时会有异常发生,可以通过设置属性required=false解决,例如:

@RequestParam(value="username", required=false)
  **** 若"Content-Type"="application/x-www-form-urlencoded",post get都可以
  **** 若"Content-Type"="application/application/json",只适用get
   /**
   * 5、用注解@RequestParam绑定请求参数到方法入参
   * @param username
   * @param password
   * @return
   */
  @RequestMapping(value="/addUser6",method=RequestMethod.GET)
  public String addUser6(@RequestParam("username") String username,@RequestParam("password") String password) {
    System.out.println("username is:"+username);
    System.out.println("password is:"+password);
    return "demo/index";
  }

6、用request.getQueryString() 获取spring MVC get请求的参数,只适用get请求

@RequestMapping(value="/addUser6",method=RequestMethod.GET)
public String addUser6(HttpServletRequest request) {
  System.out.println("username is:"+request.getQueryString());
  return "demo/index";
}
时间: 2024-10-11 01:41:02

Java Spring Controller 获取请求参数的几种方法的相关文章

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

1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交.若"Content-Type"="application/x-www-form-urlencoded",可用post提交        url形式:http://localhost:8080/SSMDemo/demo/addUser1?username=lixiaoxi&password=111111 提交的参数需要和Controller方法中的入

JavaWeb获取请求参数的两种方式

第一种:通过获取缓冲流读取参数 public void registerUser(HttpServletRequest request, HttpServletResponse response)throws  Exception  { //直接获取请求参数,通过缓冲流读取数据  BufferedReader br=request.getReader();  String inputLine = "";  String json = "";      while (

spring mvc获取路径参数的几种方式 - 浅夏的个人空间 - 开源中国社区

body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;

springboot获取URL请求参数的几种方法

原文地址:http://www.cnblogs.com/xiaoxi/p/5695783.html 1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交. /** * 1.直接把表单的参数写在Controller相应的方法的形参中 * @param username * @param password * @return */ @RequestMapping("/addUser1") public String addUser1

spring mvc获取绝对路径的几种方法

1.首先如果是在一个controller方法中,则很简单,直接用下面语句. 1 @RequestMapping("categoryHome") 2 public ModelAndView categoryHome(ParamModel pm,HttpServletRequest req) { 3 String path=req.getServletContext().getContextPath(); 4 System.out.println(path); 5 String realP

【Jquery】jQuery获取URL参数的两种方法

jQuery获取URL参数的关键是获取到URL,然后对URL进行过滤处理,取出参数. location.href是取得URL,location.search是取得URL"?"之后的字符串,也就是说参数部分. 方法一: function request(paras){ var url = location.href; var paraString = url.substring(url.indexOf("?")+1,url.length).split("&a

Spring Aspect 获取请求参数

切片(Aspect)也就是Spring AOP 实现Aspect的主要步骤: 1.在哪里切入 .在哪个方法起作用 .什么时候起作用 2.起作用的时候执行什么处理逻辑 下面是代码实现 /** * 切片Aspect @Around的使用 * 1.添加 @Aspect 和@Component注解 * 2.方法是用@Around注解和传入ProceedingJoinPoint对象 * 虽然切片可以拿到是调用方法时候传过来的参数和值 * 但是....却拿不了原始的请求和响应对象了 * * */ @Aspe

Django回顾--获取请求参数的几种方式

路径参数 查询字符串:request.GET(字典) 请求体(表单类型):request.POST(字典) 请求体(非表单类型):request.body(字节) 请求头:request.META 其他常用HttpRequest对象属性method:一个字符串,表示请求使用的HTTP方法,常用值包括:'GET'.'POST'.user:请求的用户对象.path:一个字符串,表示请求的页面的完整路径,不包含域名和参数部分.encoding:一个字符串,表示提交的数据的编码方式.如果为None则表示

2017-8-25 c# 获取url参数的五种方法(转)

假设当前页完整地址为:http://www.jbxue.com/aaa/bbb.aspx?id=5&name=kelli则: "http://"是协议名"www.jbxue.com"是域名"aaa"是站点名"bbb.aspx"是页面名(文件名)"id=5&name=kelli"是参数 下面分享几个举得url中相关参数的例子,包括完整url.域名等信息. 1,获取 完整url (协议名+域名+