js ajax java传参_ajax参数传递与后台接收
@
ajax参数传递与后台接收
Servlet中读取http参数的方法
Enumeration getParameterNames() 返回一个 String 对象的枚举,包含在该请求中包含的参数的名称
String getParameter(String name) 以字符串形式返回请求参数的值,或者如果参数不存在则返回 null。
String getQueryString() 返回包含在路径后的请求 URL 中的查询字符串。
String[] getParameterValues(String name) 返回一个字符串对象的数组,包含所有给定的请求参数的值,如果参数不存在则返回 null。
ServletInputStream getInputStream() 使用 ServletInputStream,以二进制数据形式检索请求的主体。
ajax默认contentType为application/x-www-form-urlencoded
使用默认contentType,参数追加到url后传递
$.ajax({
url: "http://localhost:8082/boot/request/parameter?name=aaa¶B=bbb",
contentType: "application/x-www-form-urlencoded;charset=utf-8",
success: function(json){
console.log(json);
}
});
//请求中包含的参数的名称
Enumeration parameterNames = request.getParameterNames();
while (parameterNames.hasMoreElements()) {
String s = parameterNames.nextElement();
System.out.println("getParameterNames:" + s);
String paraA = request.getParameter(s);
System.out.println("getParameter:" + paraA);
}
// 返回包含在路径后的请求 URL 中的查询字符串
String queryString = request.getQueryString();
System.out.println("getQueryString:" + queryString);
使用默认contentType,参数放到data中传递
$.ajax({
url: "http://localhost:8082/boot/request/parameter",
contentType: "application/x-www-form-urlencoded;charset=utf-8",
data: {name: "aaa", paraB:"bbb"},
success: function(json){
console.log(json);
}
});
//请求中包含的参数的名称
Enumeration parameterNames = request.getParameterNames();
while (parameterNames.hasMoreElements()) {
String s = parameterNames.nextElement();
System.out.println("getParameterNames:" + s);
String paraA = request.getParameter(s);
System.out.println("getParameter:" + paraA);
}
使用默认contentType,data中传递数组
$.ajax({
url: "http://localhost:8082/boot/request/parameter",
type: "post",
contentType: "application/x-www-form-urlencoded;charset=utf-8",
data: {foo: ["bar1", "bar2"]},
success: function (json) {
console.log(json);
}
});
// 返回一个字符串对象的数组
String[] parameterValues = request.getParameterValues("foo[]");
if (parameterValues != null) {
for (String parameterValue : parameterValues) {
System.out.println("getParameterValues:" + parameterValue);
}
}
使用contentType为application/json,在data中传递复杂参数
$.ajax({
url: "http://localhost:8082/boot/request/parameter",
type: "post",
contentType: "application/json;charset=utf-8",
data: JSON.stringify({name: "aaa", foo: ["bar1", "bar2"]}),
success: function (json) {
console.log(json);
}
});
// 以二进制数据形式检索请求的主体
ServletInputStream inputStream = request.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
String line = "";
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line);
}
System.out.println("getInputStream:" + sb);
使用contentType为application/json,在data中传递复杂参数,并使用springmvc接收
$.ajax({
url: "http://localhost:8082/boot/request2/requestBody",
type: "post",
contentType: "application/json;charset=utf-8",
data: JSON.stringify({id: 111, name: "aaa", foo: ["bar1", "bar2"]}),
success: function (json) {
console.log(json);
}
});
@RequestMapping(value = "/requestBody")
public void RequestBody(@RequestBody User user) throws IOException {
System.out.println(user.toString());
}
url追加参数与data中放json同时使用
$.ajax({
// url: "http://localhost:8082/boot/request/parameter?userName=aaa",
url: "http://localhost:8082/boot/request2/parm?userName=aaa",
type: "post",
contentType: "application/json;charset=utf-8",
data: JSON.stringify({id: 111, name: "aaa", foo: ["bar1", "bar2"]}),
async:false,
success: function (json) {
console.log(json);
}
});
//请求中包含的参数的名称
Enumeration parameterNames = request.getParameterNames();
while (parameterNames.hasMoreElements()) {
String s = parameterNames.nextElement();
System.out.println("getParameterNames:" + s);
String paraA = request.getParameter(s);
System.out.println("getParameter:" + paraA);
}
// 以二进制数据形式检索请求的主体
ServletInputStream inputStream = request.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
String line = "";
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line);
}
System.out.println("getInputStream:" + sb);
@RequestMapping(value = "/parm")
public void parm(@RequestParam String userName, @RequestBody User user) throws IOException {
System.out.println("userName:" + userName);
System.out.println(user.toString());
}
js ajax java传参_ajax参数传递与后台接收相关推荐
- js ajax java传参_js使用ajax传值给后台,后台返回字符串处理方法
之前使用js获取后台生成的JSON字符串,然后给select填充值,这次需要重新获取一次. 这里的目标是,在一个input输入框里,输入一个用户名,判断是否为空,是否不存在,如果存在返回几个字段给前台 ...
- js ajax上传文件功能
js ajax上传文件功能 ajax请求 php接收文件(yii框架) ajax请求 <form enctype="multipart/form-data"><i ...
- ajax参数传递与后台接收【转存】
ajax参数传递与后台接收 Servlet中读取http参数的方法 Enumeration getParameterNames() 返回一个 String 对象的枚举,包含在该请求中包含的参数的名称 ...
- ajax使用pur请求怎么传参,数组参数传递给控制器的方式
开发工具与关键技术:Visual Studio 与jquery.C# 作者:黄灿 撰写时间:2019.7.5 在项目上多多少少都会有些地方会使用到批量增删改的地方,删除可以通过ID获取到每一条数据然后 ...
- Java传参是字节还是字符串好_深入分析java传参
概述 java中的参数传递问题可以根据参数的类型大致可以分为三类:传递基本类型,传递String类型,传递引用类型,至于最终是否可以归纳为值传递和引用传递,根据每个人的理解不同,答案不同,此处不做强调 ...
- mybatis java传参_[Java教程]Mybatis批量和传参
[Java教程]Mybatis批量和传参 0 2014-07-31 04:00:12 MyBatis中批量插入 方法一: resultType="java.lang.String" ...
- a标签用ajax请求传参,Django中如何实现传参的Ajax请求
带参数的Ajax请求 通过Ajax实现下面的功能: 在实现这个功能之前需要掌握的点: 1.在学习jQuery时,我们知道: 获取input标签中输入的值:$("#num1").va ...
- String的按值传递,java传参都是传值
java中对象作为参数传递给一个方法,到底是值传递,还是引用传递? String和int参数传递是按值传递还是引用传递? 一道面试题目,String的传递: 1 2 3 4 5 6 7 8 9 pub ...
- Java - 传参到底是哪种? pass by value or pass by reference
在了解Java传参数是pass by value或是pass by reference之前,先了解=赋值的用法会对理解传参很有帮助 赋值(=)的用法 =的意义是赋值,但是这个赋值用在 基本类型 和 对 ...
最新文章
- ASP.net(C#)批量上传图片(完整版)
- 100例shell脚本之八远程管理获得hosts ip以及推送公钥到hosts
- Android -- TouchDelegate
- 开学季:当当大促的额外优惠又来啦!150 买 400的书!搓搓搓~
- 6个月达不到25.6万年薪AI工程师,进不了大厂全额退款
- RocketMQ各种集群模式介绍
- PCB板上的“特殊焊盘”到底起什么作用?
- 银行不是很喜欢客户分期吗?为何申请信用卡分期被拒绝了?
- ASP.NET 2.0 中的新增服务、控件与功能概述(四)
- RabbitMQ详解(三)
- Linux 多线程可重入函数
- web前端基础(06css)
- 利用Ajax实现DataGrid无刷新分页(AjaxGrid)【转】
- ASP.NET 2.0中执行数据库操作命令之二
- PuTTY怎么读,PuTTY怎么发音,PuTTY的发音
- windows server 2008共享文件夹
- Linuxnbsp;cat命令详解
- python爬虫有趣的应用软件_Python学习,爬虫不一定非要抓数据,也可以做自己喜欢的应用程序...
- 基础算法(二):迭代、递归与分治
- 怎样破坏程序的堆栈?
热门文章
- 从零开始学C++之STL(七):剩下5种算法代码分析与使用示例(remove 、rotate 、sort、lower_bound、accumulate)...
- 实战~~整个网络无法浏览,提示网络不存在或者尚未启动
- .NET点滴:SpanT
- .NET 为大型应用接入 ApplicationStartupManager 启动流程框架
- CondenserDotNet - 使用 Kestrel 和 Consul 的 API 反向代理库!
- Avalonia跨平台入门第一篇
- 如何做到 byte[] 和 十六进制 互转?
- 为什么 Linux 上的 Asp.NET 5 需要 Kestrel ?
- .NET 6 Preview 3 中 ASP.NET Core 的更新和改进
- 使用SignalR从服务端主动推送警报日志到各种终端(桌面、移动、网页)