`
747017186
  • 浏览: 330002 次
社区版块
存档分类
最新评论

java httpclient

    博客分类:
  • java
 
阅读更多

以前也发过类似于这样的文章。但是这个正规。是Apache下的项目。

直接看代码:

/**
 * Mainbo.com Inc.
 * Copyright (c) 2015-2017 All Rights Reserved.
 */
package com.mainbo.jy.resdown.Main;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

/**
 * <pre>
 *
 * </pre>
 *
 * @author huangjunhua
 * @version $Id: Main.java, v 1.0 2015年5月13日 下午12:01:09 huangjunhua Exp $
 */
public class Main {	
	/**
	* 返回接口信息
	* @param strUrl,接口参数  
	* paramStr 参数信息
	* @return 服务器返回信息
	 * @throws Exception 
	*/
	public static String postHttp(String url,String paramStr){
		String content="";
		try {
			// 创建默认的httpClient实例.    
		     HttpClient httpclient =new DefaultHttpClient();  
			 // 创建httpget.    
		     HttpPost httpPost = new HttpPost("http://localhost:8080/TestWeb/s");  
		     System.out.println("executing request " + httpPost.getURI()); 
		     //传递参数
		     List<NameValuePair> nvps = new ArrayList<NameValuePair>();  
		     nvps.add(new BasicNameValuePair("a", "中文"));  
		     nvps.add(new BasicNameValuePair("password", "secret20")); 
		     
		     //设置参数的编码
		     UrlEncodedFormEntity encodedFormEntity=new UrlEncodedFormEntity(nvps,"UTF-8");
                     //设置发送参数的实体
		     httpPost.setEntity(encodedFormEntity); 
		     
		     //执行post请求
	    	 HttpResponse httpResponse=httpclient.execute(httpPost);
	    	 
	    	 //返回来的实体
	    	 HttpEntity entity = httpResponse.getEntity();  
	    	 //响应状态  
	         System.out.println("status:" + httpResponse.getStatusLine());  
	         //判断响应实体是否为空  
	         if (entity != null) {  
	             System.out.println("contentEncoding:" + entity.getContentType());//返回参数的编码  
                     //返回参数的内容
	             System.out.println("response content:" + EntityUtils.toString(entity));  
	             content=EntityUtils.toString(entity);
	         }  
		} catch (ClientProtocolException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return content;
}

 下面是接受的servlet代码:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class TestServlet extends HttpServlet{

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		this.doPost(req, resp);
	}

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("*******");
		String message = req.getParameter("a");
		String password = req.getParameter("password");
		
		System.out.println(message);
		System.out.println(password);
		
		req.setCharacterEncoding("UTF-8");
		resp.setContentType("text/plain; charset=utf-8");//设那边置编码防止http那边乱码
		resp.setCharacterEncoding("UTF-8");
		PrintWriter out=resp.getWriter ();
		out.print("欢迎:"+message);
	}
	
}

 

分享到:
评论

相关推荐

    java httpclient 模拟登录

    在"java httpclient 模拟登录"这个场景下,我们通常会用到HttpClient来模拟用户登录网站的过程,获取登录后的session信息,以便后续能够访问登录后才能看到的页面内容。以下将详细介绍如何使用Java HttpClient进行...

    Java HttpClient 全部的jar包

    在Java项目中,使用HttpClient可以实现与Web服务器的高效通信。下面将详细介绍这12个jar包的作用及其在HttpClient中的功能: 1. `commons-beanutils-1.8.0.jar`: Apache Commons BeanUtils库提供了对Java Beans属性...

    java HttpClient 发送GET请求和带有表单参数的POST请求教程例子

    ### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...

    JAVA httpclient jar下载

    httpclient常用封装工具 doGet(String url, Map, String&gt; param) doPost(String url, Map, String&gt; param) doPostJson(String url, String json)

    java httpclient 抓取 数据 和jar 包

    Java HttpClient 是 Apache HttpClient 库的一部分,它提供了丰富的功能,包括连接管理、重试策略、超时设置等,使得在Java中进行网络通信变得更加便捷。HttpClient库不仅支持基本的HTTP协议,还支持HTTPS以及一些...

    Java httpclient的一个小例子,没有服务器端下载请慎重

    Java HttpClient 是一个强大的库,常用于执行HTTP请求,模拟浏览器行为。在这个小例子中,我们将专注于客户端代码,因为标题提示没有包含服务器端的部分。HttpClient 可以用来进行GET、POST和其他HTTP方法的操作,...

    java httpclient jar工具包

    java httpclient 所需要的包,都是最新版的 commons-logging-1.1.3.jar commons-codec-1.6.jar commons-httpclient-3.1.jar

    java httpClient 工具类 java httpClient 工具类

    java httpClient 工具类 java httpClient 工具类 java httpClient 工具类 java httpClient 工具类 java httpClient 工具类 java httpClient 工具类 java httpClient 工具类 java httpClient 工具类 java httpClient ...

    JavaHttpClient

    Java HttpClient 是一个强大的网络通信库,它允许Java开发者在应用程序中实现HTTP和HTTPS协议的请求。这个工具类在电商开发中特别有用,因为通常需要与各种Web服务进行交互,如商品信息抓取、订单同步、用户反馈处理...

    JavaHttpClient实例

    本实例将深入探讨如何在Java中使用HttpClient进行网络通信。 首先,你需要在项目中引入HttpClient的相关依赖。如果是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;org.apache.httpcomponents ...

    (完整版)JAVA利用HttpClient进行POST请求(HTTPS).doc

    1. JAVA HttpClient库的使用 2. HTTPS协议的使用 3. SSL/TLS证书的使用 4. X509TrustManager的使用 5. DefaultHttpClient类的使用 6. HttpClient的自定义 7. POST请求的发送 8. 请求头和请求体的指定 9. HTTPS服务器...

    java httpclient开发所需要的jar文件(全)

    这里提到的压缩包包含了使用Java HttpClient所需的多个关键组件。 1. `apache-mime4j-0.6.jar`: 这个库提供了对MIME消息解析的支持,MIME是一种标准,用于在邮件和网络消息中传输多媒体内容。在HTTP客户端中,它...

    简单的HTTP功能监控功能(java httpclient-3.1)

    标题中的“简单的HTTP功能监控”指的是使用Java编程语言,通过`httpclient-3.1`库来实现对HTTP服务的功能性监控。`httpclient-3.1`是Apache HttpClient的一个旧版本,它提供了丰富的功能来执行HTTP请求并处理响应,...

    java爬虫所需的httpclient.rar_java HTTPCLIENT包

    在Java编程中,HttpClient常被用于网页爬虫的开发,因为它提供了对网络通信的低级别控制,使我们能够灵活地处理各种网络任务。 在使用Java HttpClient进行网页抓取时,首先需要理解以下关键概念和组件: 1. **...

    java httpclient https或http及文件中转上传工具类

    该工具类使用httpclient进行http or https请求,包括requestbody格式和form表单格式,另外含文件服务器中转上传方法,几乎支持所有常用接口调用,内含详细注释和说明文件,含jar包,及maven方式引用,拿过去直接用吧

    基于java httpclient的12306 买票软件, 仅供学习使用.zip

    【Java HttpClient库在12306购票应用中的实践】 1. Java HttpClient介绍 Java HttpClient是Apache HttpClient项目的一部分,是一个强大的HTTP客户端API,允许开发者在Java应用程序中执行HTTP请求。它支持各种HTTP...

    java httpclient工具

    在本文中,我们将深入探讨Java HttpClient工具的使用方法、核心概念以及它如何帮助开发人员更高效地进行网络通信。 1. **HttpClient的安装与引入** 要使用HttpClient,首先需要将其添加到项目的依赖库中。对于...

    java使用HttpClient通过url下载文件到本地

    综上所述,通过Java的HttpClient库,可以在Eclipse环境中编写程序,实现从指定URL下载文件到本地的功能。通过理解HttpClient的工作原理和提供的API,开发者可以构建出稳定、高效的文件下载解决方案。

    Java 使用HttpClient保持SESSION状态

    下面我们将详细探讨如何在Java中使用HttpClient来实现这一目标。 首先,我们需要导入必要的Apache HttpClient库,通常包含以下依赖: ```xml &lt;groupId&gt;org.apache.httpcomponents &lt;artifactId&gt;httpclient ...

Global site tag (gtag.js) - Google Analytics