`
radzhang
  • 浏览: 310268 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

$Post传参

 
阅读更多

通过POST传参的话,HttpServletRequest接收参数的方法 

request.getParameter(String) 
request.getParameterValues(String) 
request.getParameterNames() 
一个一个介绍,第一种getParameter(String),这种接收参数方法用于接收单个参数或者多个参数(多个参数用英文逗号隔开),方法内传递一个String类型的参数名,请求地址如下:singleParam?param=Jack,Rose,Tom(我这个在struts2中的写法),前端代码如下:

<a href="singleParam?param=Jack,Rose,Tom">多个参数一</a><br/>

后台接收代码

Loglog = LogFactory.getLog(Action.class); publicString singleParam(){ HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST); log.info(request.getParameter("param")); String[] param = request.getParameter("param").split(","); for(int i=0;i<param.length;i++){ log.info(param[i]); } return SUCCESS; }

 

代码解释:将Action上下文获取的HTTP_REQUEST转型成HttpServletRequest,获取参数用逗号分割,隔出来的参数为String类型的数组,遍历打印日志

第二种getParameterValues(String),用于接收多个参数名相同的参数,比如:manyParam?param=Jack&param=Rose&param=Tom,参数名都叫做param,方法内传递的String类型的参数为那个一致的名称,本例中就是param,前端页面代码:

<a href="manyParam?param=Jack&param=Rose&param=Tom">多个参数二</a>
  • 1
  • 1

后台接收参数的代码块:

public String manyParam(){
        HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
        log.info(request.getParameterValues("param"));
        String[] param = request.getParameterValues("param");
        for(int i=0;i<param.length;i++){
            log.info(param[i]);
        }
        return SUCCESS;
    

第三种getParameterNames(),得到传递的参数名列表,返回一个Enumeration对象,遍历这个对象就可以循环得到每一个参数名。例如:paramName?param1=Apple&param2=Banana&param3=Orange,有三个参数param1,param2,param3,前台页面代码:

<a href="paramName?param1=Apple&param2=Banana&param3=Orange">多个参数 参数名</a>
  • 1
  • 1

后台接收参数代码:

public String paramName(){
        HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
        Enumeration<String> params = request.getParameterNames();
        while(params.hasMoreElements()){
            log.info(params.nextElement());
        }
        return SUCCESS;
    }

 

一般Jquery $.post等ajax方法,可以用JSON传参,其实是Jquery会自己调用jquery.param()对传入参数进行序列化。序列化之后也就变成 param1=value1&param2=value2这样的URL可识别字串。详细可以查找jquery.param()的介绍。

 

 

 

分享到:
评论

相关推荐

    java http 接口调用 的get和post传参方法

    java实现调用httpclient接口的类和方法,包括了get和post传参方式,简单易懂

    调用webservice,通过post传参读取返回的XML

    这里我们关注的是如何使用POST方法调用一个WebService,并处理返回的XML响应。我们将探讨以下知识点: 1. **WebService**:WebService是一种基于HTTP协议的分布式计算模型,允许不同系统间的应用进行交互。它通常...

    asp.net Core Post Json方式给控制器Action传参并拦截丢失参数等错误信息

    在action的传参上加入FromJsonKey属性即可在传入的json中传入参数,如果传入的json中不存在相应键即报错 [HttpPost] public IActionResult Index([FromJsonKey]int page) { return Json(page); } [HttpPost()]...

    php使用$_POST或$_SESSION[]向js函数传参

    1. 使用`$_POST`向JavaScript传递参数: 当用户通过HTML表单提交数据时,这些数据通常以POST方式发送到服务器。在PHP端,我们可以使用`$_POST`数组来获取这些数据。如果要在JavaScript中使用这些数据,可以将PHP...

    get传参解析

    在实际开发中,Get传参和Post传参都有其使用场景: * 在做数据查询时,建议用Get方式 * 在做数据添加、修改或删除时,建议用Post方式 * 如果包含机密信息,建议用Post数据提交方式 Get传参和Post传参都是HTTP请求...

    ketlle传动态参数调用http post接口入库.zip

    在完成Transformation的配置后,可以通过Kettle的"调试"功能进行测试,确保POST请求成功发送且返回正确的响应。如果需要入库,检查数据是否正确写入数据库。 7. **运行与调度** 一旦验证无误,你可以将这个...

    angular使用post、get向后台传参的问题实例

    Angular 中使用 POST、GET 向后台传参的问题实例 Angular 中使用 POST、GET 向后台传参是一种常见的需求,但是很多开发者在实现时都会遇到一些问题。这些问题主要来自于Angular中的默认请求头和后台的默认请求头不...

    java代码发送JSON格式的httpPOST请求

    下面将详细解析如何利用`HttpURLConnection`来构建并发送一个包含JSON数据的POST请求: ```java import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io....

    PHP、web前端开发-页面传参POST方法.pptx

    本文将详细讲解PHP与前端开发中页面传参的POST方法,以及如何在不同页面间进行参数传递。 POST方法是HTTP协议中的一个请求方法,用于向服务器发送数据,通常用于提交表单数据。与GET方法不同,POST方法的数据不会...

    Unity 中通过UnityWebRequest POST传JSON格式的参数请求数据。

    Unity 中通过UnityWebRequest 以POST形式传JSON格式(键值对格式)的参数请求数据。

    vue的$http的get请求要加上params操作

    补充知识:vue请求中 post get传参方式是不同的哦 我在学习vue,项目中post请求,get请求都用到了,我发现传参方式是不一样的。 post请求的例子: checkin (){ this.$http.post('my url',{ mobilePhone:this.phone,...

    HttpClient post提交文件加传参的demo

    这个"HttpClient post提交文件加传参的demo"是针对初学者的一个实例,帮助理解如何使用HttpClient来实现这样的功能。在此,我们将详细探讨HttpClient的使用以及如何通过它进行文件上传和参数传递。 首先,你需要...

    axios post请求传参模拟登录实例

    本篇将详细介绍如何使用 Axios 进行 POST 请求,特别是如何传递参数以及模拟登录。 首先,POST 请求通常用于向服务器提交数据,比如在用户注册或登录时提交用户名和密码。在 Axios 中,你可以通过 `axios.post()` ...

    get请求和post请求对于日期的传参

    get请求和post请求对于日期的传参,详细描述了常见情况以及异常情况,非法传参情况

    java发送JSON格式的http通讯的post请求

    `writeValueAsString()`方法将`MyData`对象转换为JSON字符串,然后通过`StringEntity`设置为POST请求的实体。 注意,处理HTTP响应时,需要确保正确关闭响应和HTTP客户端,以避免资源泄漏。 此外,如果你正在使用...

    无参数的post请求

    ### 无参数的POST请求详解 #### 一、概述 在现代Web开发中,客户端与服务器之间的通信方式主要采用HTTP协议。HTTP协议定义了多种请求方法,如GET、POST等,其中POST请求常用于向服务器发送数据。通常情况下,POST...

    解决vue处理axios post请求传参的问题

    解决 Vue 处理 Axios POST 请求传参的问题 在使用 Vue 框架时, Axios 库是常用的 HTTP 客户端库之一。然而,在使用 Axios 发送 POST 请求时,经常会遇到参数传递的问题。今天,我们就来解决这个问题,并详细地讲解...

    以GET或者POST方式向网页提交参数

    以GET或者POST方式向网页提交参数!我们知道如 果是GET的请求方式,那么所有参数都直接放到页面的URL后面用问号与页面地址隔开,每个参数用&隔开

    Javascript使用post方法提交数据实例

    本文实例讲述了Javascript使用post方法提交数据的方法。分享给大家供大家参考。具体如下: 使用JS提交数据时,可以调用本方法实现post方式的提交。 var jsPost = function(action, values) { var id = Math.random...

    易语言post提交示例

    在易语言中,POST提交是网络编程中的一个常见操作,通常用于向服务器发送数据,如表单提交、API接口调用等。下面将详细讲解易语言中如何实现POST提交。 首先,POST提交的核心在于发送HTTP请求,易语言提供了“网络...

Global site tag (gtag.js) - Google Analytics