Java如何实现URL带请求参数(get/post)及得到get和post请求url和参数列表的方法

 更新时间:2015年10月26日 09:51:42   投稿:mrr  
本文给大家介绍Java如何实现URL带请求参数(get/post)及得到get和post请求url和参数列表的方法,涉及到 java获取post请求参数的方法,感兴趣的朋友一起看看吧

具体代码如下所示:

public static String sendGet(String url,String param)
 {
 String result = "";
 try{
 String urlName = url + "?"+param;//
 URL U = new URL(urlName);
 URLConnection connection = U.openConnection();
 connection.connect();
 BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
 String line;
 while ((line = in.readLine())!= null)
 {
 result += line;
 }
 in.close(); 
 }catch(Exception e){
 System.out.println("Helloword!!"+e);
 }
 return result;
 }
 public static String sendPost(String url,String param)
 {
 String result="";
 try{
 URL httpurl = new URL(url);
 HttpURLConnection httpConn = (HttpURLConnection)httpurl.openConnection();  
 httpConn.setDoOutput(true);
 httpConn.setDoInput(true);
 PrintWriter out = new PrintWriter(httpConn.getOutputStream());
 out.print(param);
 out.flush();
 out.close();
 BufferedReader in = new BufferedReader(new InputStreamReader(httpConn.getInputStream()));
 String line;
 while ((line = in.readLine())!= null)
 {
 result += line; 
 }
 in.close();
 }catch(Exception e){
 System.out.println("Helloword!"+e);
 }
 return result;
 }

下面给大家介绍 java得到GET和POST请求URL和参数列表的方法

  在servlet中GET请求可以通过HttpServletRequest的getRequestURL方法和getQueryString()得到完整的请求路径和请求所有参数列表,POST的需要getParameterMap()方法遍历得到,不论GET或POST都可以通过getRequestURL+getParameterMap()来得到请求完整路径

package com.zuidaima       
import java.io.IOException; 
import java.io.PrintWriter; 
import java.util.Map; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
public class GetParams extends HttpServlet { 
 private static final long serialVersionUID = 1L; 
 public GetParams() { 
  super(); 
 } 
 protected void doGet(HttpServletRequest request, 
   HttpServletResponse response) throws ServletException, IOException { 
  PrintWriter writer = response.getWriter(); 
  writer.println("GET " + request.getRequestURL() + " " 
    + request.getQueryString()); 
  Map<String, String[]> params = request.getParameterMap(); 
  String queryString = ""; 
  for (String key : params.keySet()) { 
   String[] values = params.get(key); 
   for (int i = 0; i < values.length; i++) { 
    String value = values[i]; 
    queryString += key + "=" + value + "&"; 
   } 
  } 
  // 去掉最后一个空格 
  queryString = queryString.substring(0, queryString.length() - 1); 
  writer.println("GET " + request.getRequestURL() + " " + queryString); 
 } 
 protected void doPost(HttpServletRequest request, 
   HttpServletResponse response) throws ServletException, IOException { 
  PrintWriter writer = response.getWriter(); 
  Map<String, String[]> params = request.getParameterMap(); 
  String queryString = ""; 
  for (String key : params.keySet()) { 
   String[] values = params.get(key); 
   for (int i = 0; i < values.length; i++) { 
    String value = values[i]; 
    queryString += key + "=" + value + "&"; 
   } 
  } 
  // 去掉最后一个空格 
  queryString = queryString.substring(0, queryString.length() - 1); 
  writer.println("POST " + request.getRequestURL() + " " + queryString); 
 } 
}

以上代码简单易懂,希望对大家学习 java post get url 请求参数的相关方法有所帮助,感谢大家一直以来对脚本之家网站的支持,有你们的支持,我们会做的更好。

相关文章

  • SpringBoot主键ID传到前端后精度丢失的问题解决

    SpringBoot主键ID传到前端后精度丢失的问题解决

    这篇文章主要通过示例为大家详细介绍一些SpringBoot如何解决雪花算法主键ID传到前端后精度丢失问题,文中的示例代码讲解详细,需要的可以参考一下
    2022-05-05
  • AsyncHttpClient KeepAliveStrategy源码流程解读

    AsyncHttpClient KeepAliveStrategy源码流程解读

    这篇文章主要为大家介绍了AsyncHttpClient KeepAliveStrategy源码流程解读,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • 2020.2 IntelliJ IDEA激活与IDEA2020.2破解详细教程

    2020.2 IntelliJ IDEA激活与IDEA2020.2破解详细教程

    这篇文章主要介绍了2020.2 IntelliJ IDEA激活与IDEA2020.2破解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Java API文档的使用方法详解

    Java API文档的使用方法详解

    在开发过程中如果遇到疑难问题,除了可以在网络中寻找答案,也可以在Java API帮助文档(简称"JDK文档"”)中查找答案,下面这篇文章主要给大家介绍了关于Java API文档使用的相关资料,需要的朋友可以参考下
    2023-02-02
  • Java实现简易图书借阅系统

    Java实现简易图书借阅系统

    这篇文章主要为大家详细介绍了Java实现简易图书借阅系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Java中wait()与sleep()两者的不同深入解析

    Java中wait()与sleep()两者的不同深入解析

    在Java多线程编程中,wait()和sleep()是控制线程执行和等待的两个关键方法,但它们在应用场景和实现上有显著差异,这篇文章主要介绍了Java中wait()与sleep()两者的不同,需要的朋友可以参考下
    2024-11-11
  • Spring boot2基于Mybatis实现多表关联查询

    Spring boot2基于Mybatis实现多表关联查询

    这篇文章主要介绍了Spring boot2基于Mybatis实现多表关联查询,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Redis框架Jedis及Redisson对比解析

    Redis框架Jedis及Redisson对比解析

    这篇文章主要介绍了Redis框架Jedis及Redisson对比解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • java动态添加外部jar包到classpath的实例详解

    java动态添加外部jar包到classpath的实例详解

    这篇文章主要介绍了java动态添加外部jar包到classpath的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • Mybatis自定义拦截器实现权限功能

    Mybatis自定义拦截器实现权限功能

    本文主要介绍了Mybatis自定义拦截器实现权限功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12

最新评论