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
){
......
}

原文地址:https://www.cnblogs.com/alasijia/p/9334655.html

【转载】spring mvc 后端获得前端传递过来的参数的方法的更多相关文章

  1. spring mvc 后端获得前端传递过来的参数的方法

    1.通过HttpServletRequest 获得 HttpServletRequest.getParameter(参数名),可以获得form表单中传递的参数,或ajax或url中传递过来的参数,如果 ...

  2. Spring MVC 后端获取前端提交的json格式字符串并直接转换成control方法对应的参数对象

    场景: 在web应用开发中,spring mvc凭借出现的性能和良好的可扩展性,导致使用日渐增多,成为事实标准,在日常的开发过程中,有一个很常见的场景:即前端通过ajax提交方式,提交参数为一个jso ...

  3. spring MVC 后端 接收 前端 批量添加的数据(简单示例)

    第一种方式:(使用ajax的方式) 前端代码: <%@ page contentType="text/html;charset=UTF-8" language="j ...

  4. Spring MVC如何接收浏览器传递来的请求参数--request--形参--实体类封装

    阅读目录 1. 通过HttpServletRequest获得请求参数和数据 2. 处理方法形参名==请求参数名 3. 如果形参名跟请求参数名不一样怎么办呢?用@RequestParam注解 4. 用实 ...

  5. 0056 Spring MVC如何接收浏览器传递来的请求参数--request--形参--实体类封装

    浏览器总会向服务器传递一些参数,那么Spring MVC如何接收这些参数? 先写个简单的html,向服务器传递一些书籍信息,如下: <!DOCTYPE html> <html> ...

  6. spring mvc 及NUI前端框架学习笔记

    spring mvc 及NUI前端框架学习笔记 页面传值 一.同一页面 直接通过$J.getbyName("id").setValue(id); Set值即可 二.跳转页面(bus ...

  7. Spring MVC(五)--控制器通过注解@RequestParam接受参数

    上一篇中提到,当前后端命名规则不一致时,需要通过注解@RequestParam接受参数,这个注解是作用在参数上.下面通过实例说明,场景如下: 在页面输入两个参数,控制器通过注解接受,并将接受到的数据渲 ...

  8. thinkphp 获取前端传递过来的参数

    thinkphp 获取前端传递过来的参数 use think\facade\Request; // 获取当前请求的name变量 Request::param('name'); // 获取当前请求的所有 ...

  9. Spring MVC(六)--通过URL传递参数

    URL传递参数时,格式是类似这样的,/param/urlParam/4/test,其中4和test都是参数,这就是所谓的Restful风格,Spring MVC中通过注解@RequestMapping ...

随机推荐

  1. Dockerfile 指令 WORKDIR介绍

    Dockerfile中的WORKDIR指令用于指定容器的一个目录, 容器启动时执行的命令会在该目录下执行. 相当于设置容器的工作目录了.我们来看一个dockerfile文件 #test FROM ub ...

  2. git 删除目录及子目录下的同名文件

    find . -name ".git" | xargs rm -Rf find . -name ".gitignore" | xargs rm -Rf

  3. SSH 三大框架整合

    Spring整合web项目 在Servlet当中直接加载配置文件,获取对象 存在问题 每次请求都会创建一个Spring的工厂,这样浪费服务器资源,应该一个项目只有一个Spring的工厂. 在服务器启动 ...

  4. qt mvc3

    前面两节讲的model是一维的,这次开始二维的也就是我们常说的Table,相对与list,我们多了一个列的概念. 下面讲解一个例子.我先说明一下我们这个例子,在程序目录下,我们有一个文本文件,其中存放 ...

  5. qt mvc1

    mvc是经典的三层结构,将数据,视图和逻辑分离.Qt中的Model/View框架,实现了这个模式.在Qt中这个模式设计到三个类,model类,view类和delegate类.model类保存数据,vi ...

  6. android.mk-include

    -- include $(BUILD_STATIC_LIBRARY)表示编译成静态库 include $(BUILD_SHARED_LIBRARY)表示编译成动态库. include $(BUILD_ ...

  7. vmware 两删除一清空

    快速处理办法: cat /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i '/UUID/d' /etc/sysconfig/network-script ...

  8. androidStudio: ERROR: Error occurred while communicating with CMake server.

    遇到此错误的原因是cmake服务器协议版本不匹配: 解决方案: 1:直接更新android studio看能否解决: 2:如果解决不了,那么将androidstudio,ndk ,cmake,grad ...

  9. Spring Bootz之热部署

    在项目的pom.xml文件添加如下两段 <dependency> <groupId>org.springframework.boot</groupId> <a ...

  10. django模型多对多调用

    对于如下的模型: from django.db import models # Create your models here. class Student(models.Model): name = ...