Java Post

方法一:
(原始办法)
/*
 * @remark: 获取用户资料
 * @param: url发送数据的URL
 * @param: param获取用户资料的参数
 * @return: 获取用户资料状态信息
 */
 String GetUser(String url, String param)
 {
  URL httpurl = null;
  HttpURLConnection httpConn = null;
  String line = "";
   try
   {
     httpurl = new URL(url);
     httpConn = (HttpURLConnection)httpurl.openConnection();  
     httpConn.setRequestMethod("POST");    //默认是post
     httpConn.setDoOutput(true);
     httpConn.setDoInput(true); 
     PrintWriter outs = new PrintWriter(httpConn.getOutputStream());
     outs.print(param);
     outs.flush();
     outs.close();   
     BufferedReader  in = new BufferedReader(new InputStreamReader(httpConn.getInputStream()));  
     while ((line = in.readLine()) != null)
    {
       if (line.indexOf("#") == -1)
        continue;
      return line;
    }
    in.close();
 
   }catch(Exception e)
   {
     return line;
   }
   finally
   {
     if(httpConn!=null)
       httpConn.disconnect();
   }
  return line;
 }
该方法写的很简单,不够完善。
方法二:
<%@ page language="java"  pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> 
  <body>
    <%
        String name1=request.getParameter("name1");
        if(null!=name1){
            out.print(name1);out.print("<br>");
        }
        String name2=request.getParameter("name2");
        if(null!=name1){
            out.print(name2);out.print("<br>");
        }
    %>
  </body>
</html>


接下来就就是我们的程序部分了:

import java.io.IOException;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.methods.PostMethod;

public class Test {
    /**
     * @param args
     */
    public static void main(String[] args) {
        HttpClient client = new HttpClient();
        HttpMethod httpPost =getPostMethod();
        //HttpMethod httpPost =getGetMethod();
        client.getHostConfiguration().setHost("localhost", 8080, "http");
        try {
            int status = client.executeMethod(httpPost);
            if(status==200)
            {
                System.out.println(httpPost.getResponseBodyAsString());
            }
            else
            {
                System.out.println("页面请求返回值为:"+status);
            }
        } catch (HttpException e) {
            e.printStackTrace(System.err);
        } catch (IOException e) {
            e.printStackTrace(System.err);
        }finally{
            httpPost.releaseConnection();
        }
    }
    /**
     * 使用POST方式提交数据
     * @return
     */
    private static HttpMethod getPostMethod(){
        PostMethod post = new PostMethod("/PostTest/index.jsp");
        NameValuePair simcard = new NameValuePair("name1","1330227");
        NameValuePair simcard2 = new NameValuePair("name2","kjasdfklalsf");
        post.setRequestBody(new NameValuePair[] { simcard,simcard2});
        return post;
    }
    /**
     * 使用GET方式提交数据
     * @return
     */
    private static HttpMethod getGetMethod(){
        return new GetMethod("/PostTest/index.jsp?name1=1330227&name2=asdfsdf");
    }
}

注意:大家要把commons-codec-1.3.jar,commons-httpclient-3.0.jar,commons-logging.jar这三个JAR包加到我们程序的classpath中,才能使用跑起来.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值