少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

          //客戶端代碼,用來測試訪問Servlet:

          package com.abin.lee.ssh.basic.https;

          import java.io.BufferedInputStream;
          import java.io.File;
          import java.io.FileInputStream;
          import java.security.KeyStore;
          import java.text.SimpleDateFormat;
          import java.util.ArrayList;
          import java.util.List;

          import org.apache.http.HttpResponse;
          import org.apache.http.HttpVersion;
          import org.apache.http.NameValuePair;
          import org.apache.http.client.HttpClient;
          import org.apache.http.client.entity.UrlEncodedFormEntity;
          import org.apache.http.client.methods.HttpPost;
          import org.apache.http.client.params.AllClientPNames;
          import org.apache.http.conn.scheme.Scheme;
          import org.apache.http.conn.ssl.SSLSocketFactory;
          import org.apache.http.impl.client.DefaultHttpClient;
          import org.apache.http.message.BasicNameValuePair;
          import org.apache.http.protocol.HTTP;
          import org.junit.Test;

          public class GetUnionpayMessageTest {
           private static final String HTTPURL = "

           @Test
           public void testGetMessageState() throws Exception {
            HttpClient httpClient = new DefaultHttpClient();
            HttpPost httpPost =new HttpPost(HTTPURL);
                  httpClient.getParams().setParameter(AllClientPNames.PROTOCOL_VERSION,HttpVersion.HTTP_1_1);
                  httpClient.getParams().setParameter(AllClientPNames.USE_EXPECT_CONTINUE, Boolean.TRUE);
                  httpClient.getParams().setParameter(AllClientPNames.HTTP_CONTENT_CHARSET,"UTF_8");
                  httpClient.getParams().setParameter(AllClientPNames.CONN_MANAGER_TIMEOUT, 10000l);
                  httpClient.getParams().setParameter(AllClientPNames.CONNECTION_TIMEOUT, 2000);
                  httpClient.getParams().setParameter(AllClientPNames.SO_TIMEOUT, 10000);
            try {
             KeyStore trustStore = KeyStore.getInstance(KeyStore
               .getDefaultType());
             FileInputStream instream = new FileInputStream(new File(
               "D:/tomcat.keystore"));
             try {
              trustStore.load(instream, "longcode".toCharArray());
             } finally {
              try {
               instream.close();
              } catch (Exception ignore) {
              }
             }

             SSLSocketFactory socketFactory = new SSLSocketFactory(trustStore);
             Scheme sch = new Scheme("https", 1443, socketFactory);
             httpClient.getConnectionManager().getSchemeRegistry().register(sch);

             List<NameValuePair> nvps = new ArrayList<NameValuePair>();
             nvps.add(new BasicNameValuePair("userName", "abin"));
             nvps.add(new BasicNameValuePair("createTime", new SimpleDateFormat(
               "yyyy-MM-dd HH:mm:ss").format(new java.util.Date())));
             HttpResponse httpResponse = null;
             String result = "";
             try {
              httpPost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
              httpResponse = httpClient.execute(httpPost);
              BufferedInputStream buffer = new BufferedInputStream(
                httpResponse.getEntity().getContent());
              byte[] bytes = new byte[1024];
              int line = 0;
              StringBuilder builder = new StringBuilder();
              while ((line = buffer.read(bytes)) != -1) {
               builder.append(new String(bytes, 0, line, "UTF-8"));
              }
              result = builder.toString();
             } catch (Exception e) {
              e.printStackTrace();
             } finally {
              if (httpPost.isAborted()) {
               httpPost.abort();
              }
              httpClient.getConnectionManager().shutdown();
             }
             System.out.println("result=" + result);

            } finally {
             // When HttpClient instance is no longer needed,
             // shut down the connection manager to ensure
             // immediate deallocation of all system resources
             httpClient.getConnectionManager().shutdown();
            }
           }
          }




          //在%TOMCAT_HOME%/conf/server.xml里面添加的內容

          <Connector port="1443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" keystoreFile="D:/tomcat.keystore"
               keystorePass="longcode" sslProtocol="TLS" />





          //UnionPayDeal.java

          import java.io.BufferedReader;
          import java.io.IOException;
          import java.io.InputStreamReader;

          import javax.servlet.ServletConfig;
          import javax.servlet.ServletException;
          import javax.servlet.http.HttpServlet;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;
          /**
           *
           * @author Administrator
           *
           */
          public class UnionPayDeal extends HttpServlet {
           private static final long serialVersionUID = -1370581177759574628L;

           public void init(ServletConfig config) throws ServletException {
            super.init(config);
           }

           public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{
            System.out.println("接收到銀聯的異步通知");
            String accept=null;
            BufferedReader reader=new BufferedReader(new InputStreamReader(request.getInputStream()));
            int num=0;
            char[] buffer=new char[1024];
            while((num=reader.read(buffer))!=-1){
             accept=new String(buffer,0,num);
             System.out.println("accept="+accept);
            }
           }
           
           
           public void destroy() {
            super.destroy();
           }
          }


           

          主站蜘蛛池模板: 乌海市| 年辖:市辖区| 武汉市| 通城县| 宁津县| 长寿区| 鹿邑县| 沁源县| 双桥区| 康保县| 洪雅县| 介休市| 建昌县| 美姑县| 沧源| 徐水县| 广昌县| 宁明县| 龙川县| 兰州市| 临江市| 永吉县| 宁夏| 介休市| 基隆市| 台北市| 新龙县| 剑川县| 稻城县| 南京市| 大埔区| 彝良县| 建瓯市| 凉山| 怀集县| 闻喜县| 雅安市| 宁晋县| 海口市| 六枝特区| 五大连池市|