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 ...
随机推荐
- redis--基于内存的高速缓存,NoSql的典型代表
NoSql入门和概述 入门概述 为什么要使用NoSql? 1.单机mysql的美好年代 在早些年以前,那时候网站的访问量不大,用单个数据库完全可以应付.而且那个时候,绝大部分都是LAMP架构:Linu ...
- Python pip 虚拟环境使用
安装: pip install virtualenv 使用,创建虚拟环境: cd project_dir virtualenv venv #venv为虚拟环境 目录名自定义 virtualenv -p ...
- [Angular 8] Implement a Custom Preloading Strategy with Angular
Preloading all modules is quite an extreme approach and might not always be desirable. For instance, ...
- PHP读取文件内容的方法
下面我们就为大家详细介绍PHP读取文件内容的两种方法. 第一种方法:fread函数 <?php $file=fopen('1.txt','rb+'); echo fread($file,file ...
- 查看工程里有多少行java代码
/** * @Classname CustBankcardServiceImpl * @Description 计算项目代码量(行数) * @Date 2019/11/04 14:24 * @Crea ...
- mybatis执行insert后马上能获取自增主键的语句写法
<!--keyColumn keyProperty useGeneratedKeys 用于在插入数据后,能直接使用user.getId()获取主键--> <insert id=&qu ...
- Jenkins automate workflow
Now we will build an automate flow from code compiling to product delivery.The essential tools using ...
- Manthan, Codefest 19
目录 Contest Info Solutions A. XORinacci B. Uniqueness C. Magic Grid D. Restore Permutation E. Let The ...
- NetworkX系列教程(10)-算法之五:广度优先与深度优先
小书匠Graph图论 重头戏部分来了,写到这里我感觉得仔细认真点了,可能在NetworkX中,实现某些算法就一句话的事,但是这个算法是做什么的,用在什么地方,原理是怎么样的,不清除,所以,我决定先把图 ...
- [线性代数] 矩阵代数進階:矩阵分解 Matrix factorization
Matrix factorization 导语:承载上集的矩阵代数入门,今天来聊聊进阶版,矩阵分解.其他集数可在[线性代数]标籤文章找到.有空再弄目录什麽的. Matrix factorization ...