spring mvc 后端获得前端传递过来的参数的方法
1.通过HttpServletRequest 获得
HttpServletRequest.getParameter(参数名),可以获得form表单中传递的参数,或ajax或url中传递过来的参数,
如果通过form表单传递,需要form表单中的input框的 name属性的值和传递给getParameter的参数名保持一致,大小写也要一致
@Controller
@RequestMapping("/")
public class UserController {
private UserService us;
@ResponseBody
@RequestMapping("loginForm")
public void login(HttpServletRequest req, HttpServletResponse rsp) throws IOException{
String userName=req.getParameter("username").trim();//trim() 删除字符串前后的空格
String passWord=req.getParameter("password").trim();
String userInfo = us.check(userName, passWord);
String[] result = new String[1];
//从返回值中取出用户名存到result中
if (userInfo != "false") {
result[0]= "true";
}else {
result[0]= "false";
}
User user = new User();
user.setUserName(userName);
req.getSession().setAttribute("user",user);
//增加回显用户名
req.getSession().setAttribute("sessionAdminUserName",userName);
rsp.setContentType("application/json");
rsp.setCharacterEncoding("utf-8");
// 首先把字符串转成 JSONArray对象
JSONArray jsonArray = JSONArray.fromObject(result);
JSONObject jsobjcet = new JSONObject();
jsobjcet.put("data", jsonArray);
try {
rsp.getWriter().write(jsobjcet.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}
2.通过实体传递
controller中接收的参数直接是实体,controller将实体名传给server层,server层将实体传递给接口实现层(serverimpl),结构实现层通过get方法获取到参数的值,传递给数据层(mapper)
前提条件是form表单中的input框的name属性的值一定要与实体保持一致,包括大小写
/**
* 新增用户
* */
@RequestMapping(value = "addUser")
@ResponseBody
public int newaddusr(User user){
Date d = new Date();
SimpleDateFormat Time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String regDate=Time.format(d);
user.setRegDate(regDate);
String authorization=user.getAuthorization();
if(authorization=="") {
authorization="1";
user.setAuthorization(authorization);
}
int status = us.addUser(user);
return status;
}
3.通过参数名直接传递
前提条件是form表单中的input框的name属性的值一定要与实体保持一致,包括大小写
@RequestMapping("apicharts")
@ResponseBody
public List<Map<String, Object>> apicharts(String projectName,String environment,HttpServletResponse rsp,Map<String, Object> map) {
//查询项目名称列表
ats.projectName(map);
//查询环境名称列表
ats.environmentName(map);
List<Map<String, Object>> versionInfo=ats.versionCount(projectName,environment,map);
return versionInfo;
}
4. 通过@RequestParam注解获得:
参数1要与form表单中的input框的name属性的值一致,包括大小写,参数2可以理解为参数1 的别名
@RequestMapping(value="/logout")
public String logout(@RequestParam(value="参数1",required=false)String 参数2
){
......
}
spring mvc 后端获得前端传递过来的参数的方法的更多相关文章
- 【转载】spring mvc 后端获得前端传递过来的参数的方法
1.通过HttpServletRequest 获得 HttpServletRequest.getParameter(参数名),可以获得form表单中传递的参数,或ajax或url中传递过来的参数,如果 ...
- Spring MVC 后端获取前端提交的json格式字符串并直接转换成control方法对应的参数对象
场景: 在web应用开发中,spring mvc凭借出现的性能和良好的可扩展性,导致使用日渐增多,成为事实标准,在日常的开发过程中,有一个很常见的场景:即前端通过ajax提交方式,提交参数为一个jso ...
- spring MVC 后端 接收 前端 批量添加的数据(简单示例)
第一种方式:(使用ajax的方式) 前端代码: <%@ page contentType="text/html;charset=UTF-8" language="j ...
- Spring MVC如何接收浏览器传递来的请求参数--request--形参--实体类封装
阅读目录 1. 通过HttpServletRequest获得请求参数和数据 2. 处理方法形参名==请求参数名 3. 如果形参名跟请求参数名不一样怎么办呢?用@RequestParam注解 4. 用实 ...
- 0056 Spring MVC如何接收浏览器传递来的请求参数--request--形参--实体类封装
浏览器总会向服务器传递一些参数,那么Spring MVC如何接收这些参数? 先写个简单的html,向服务器传递一些书籍信息,如下: <!DOCTYPE html> <html> ...
- spring mvc 及NUI前端框架学习笔记
spring mvc 及NUI前端框架学习笔记 页面传值 一.同一页面 直接通过$J.getbyName("id").setValue(id); Set值即可 二.跳转页面(bus ...
- Spring MVC(五)--控制器通过注解@RequestParam接受参数
上一篇中提到,当前后端命名规则不一致时,需要通过注解@RequestParam接受参数,这个注解是作用在参数上.下面通过实例说明,场景如下: 在页面输入两个参数,控制器通过注解接受,并将接受到的数据渲 ...
- thinkphp 获取前端传递过来的参数
thinkphp 获取前端传递过来的参数 use think\facade\Request; // 获取当前请求的name变量 Request::param('name'); // 获取当前请求的所有 ...
- Spring MVC(六)--通过URL传递参数
URL传递参数时,格式是类似这样的,/param/urlParam/4/test,其中4和test都是参数,这就是所谓的Restful风格,Spring MVC中通过注解@RequestMapping ...
随机推荐
- js与json的区别,json的概述,json与面向对象,json与对象的转换
<script> //js与json的区别,json的概述,json与面向对象,json与对象的转换 //json的概述:json(javascript object Notation,j ...
- 超过20g的文件+上传
demo下载地址:jsp-Eclipse,jsp-MyEclipse,PHP,ASP.NET 教程:ASP.NET,JSP,PHP 一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件 ...
- 【概率论】5-4:泊松分布(The Poisson Distribution)
title: [概率论]5-4:泊松分布(The Poisson Distribution) categories: - Mathematic - Probability keywords: - Po ...
- List集合类
1.1: List.add方法——向集合列表中添加对象 public static void main(String[] args) { List<String> list=new Ar ...
- 二分算法题目训练(二)——Exams详解
CodeForces732D——Exams 详解 Exam 题目描述(google翻译) Vasiliy的考试期限将持续n天.他必须通过m门科目的考试.受试者编号为1至m. 大约每天我们都知道当天可以 ...
- P1069 细胞分裂——数学题,质因数分解
P1069 细胞分裂 我们求的就是(x^k)|(m1^m2) k的最小值: 先给m1分解质因数,再给每个细胞分解: 如果m1有的质因数,细胞没有就跳过: 否则就记录答案: 注意整数除法下取整的原则: ...
- centos6下安装docker
安装docker对内核版本的要求很高,需要内核3.10以上. 一.docker卸载 查看内核版本: 如果不升级内核到3.10安装docker,后面会有很多奇怪的问题,像我就是拉取不到镜像. 以下我是r ...
- ROUND() 函数
ROUND() 函数 ROUND 函数用于把数值字段舍入为指定的小数位数. SQL ROUND() 语法 SELECT ROUND(column_name,decimals) FROM table_n ...
- 2019 SDN上级第五次作业
1.浏览RYU官网学习RYU控制器的安装和RYU开发入门教程,提交你对于教程代码的理解,包括但不限于: 描述官方教程实现了一个什么样的交换机功能? 答:官方教程实现了一个将接收到的数据包发送到所有端口 ...
- Get Argument Values From Linq Expression
Get Argument Values From Linq Expression If you even find yourself unpacking an expression in C#, yo ...