java测试接口_Java测试普通Java接口记录-TestHrmInterface
记录一下 调用接口的测试代码,每次都得打开就项目查看 电脑有点不够用:
(核心是request方法)
packagecom.karros.test;importjava.io.BufferedReader;importjava.io.ByteArrayOutputStream;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.OutputStream;importjava.net.HttpURLConnection;importjava.net.URL;importjava.net.URLEncoder;importjava.util.ArrayList;importjava.util.Date;importjava.util.HashMap;importjava.util.List;importjava.util.Map;importcom.alibaba.fastjson.JSONObject;importcom.karros.util.DateUtils;importcom.karros.util.MD5Generator;importnet.sf.json.JSONArray;public classTestHrmInterface {public static void main(String[] args) throwsException {
String a=GetStationVolume();
System.out.println(a);//String jsontest = JSONObject.toJSONString(rs);//System.out.println("jsontest:" + jsontest);
}protected static String GetStationVolume() throwsException {
Map m = new HashMap();
m.put("syncYear", URLEncoder.encode("2019", "utf-8"));
String url= "http://localhost:8080/BIP_Api/yptbase/newHrm/GetStationVolume";//String url = "http://10.182.x.1xx:8183/BIPApi/yptbase/newHrm/GetStationVolume";//测试环境
return request(url, null, m);
}/*** httpclient
*
*@parampath
*@paramjson
*@parammaps
*@return*@throwsException*/
public static String request(String path, String json, Map maps) throwsException {
path= path + "?";for (Map.Entryitem : maps.entrySet()) {
path+= (item.getKey() + "=" + item.getValue() + "&");
}
Date startDate= newDate();
URL url= new URL(path.substring(0, path.length() - 1));
System.out.println("url:" +url.toString());
HttpURLConnection conn=(HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/json; charset=" + "UTF-8");if (json != null) {byte[] data = json.getBytes("UTF-8");
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
}
conn.setConnectTimeout(60 * 1000);
OutputStream outStream=conn.getOutputStream();if (json != null) {byte[] data = json.getBytes("UTF-8");
outStream.write(data);
}
outStream.flush();
outStream.close();
String result= "";
System.out.println("status:" +conn.getResponseCode());if (conn.getResponseCode() ==HttpURLConnection.HTTP_OK) {
InputStream inStream=conn.getInputStream();//result = new String(readStream(inStream));
result =readInStream(inStream);
}
Date endDate= newDate();double timeout =DateUtils.getSecsBetween(startDate, endDate);returnresult;
}public static String readInStream(InputStream inStream) throwsException {
StringBuffer content= newStringBuffer();
String tempStr= "";
BufferedReader in= new BufferedReader(new InputStreamReader(inStream, "UTF-8"));while ((tempStr = in.readLine()) != null) {
content.append(tempStr);
}
in.close();
inStream.close();returncontent.toString();
}/*** ��ȡ��
*
*@paraminStream
*@return�ֽ�����
*@throwsException*/
public static byte[] readStream(InputStream inStream) throwsException {
ByteArrayOutputStream outSteam= newByteArrayOutputStream();byte[] buffer = new byte[1024];int len = -1;while ((len = inStream.read(buffer)) != -1) {
outSteam.write(buffer,0, len);
}
outSteam.close();
inStream.close();returnoutSteam.toByteArray();
}
}
package com.karros.test;
import java.io.BufferedReader;import java.io.ByteArrayOutputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.HttpURLConnection;import java.net.URL;import java.net.URLEncoder;import java.util.ArrayList;import java.util.Date;import java.util.HashMap;import java.util.List;import java.util.Map;
import com.alibaba.fastjson.JSONObject;import com.karros.util.DateUtils;import com.karros.util.MD5Generator;
import net.sf.json.JSONArray;
public class TestHrmInterface {
public static void main(String[] args) throws Exception {String a = GetStationVolume();System.out.println(a);//String jsontest = JSONObject.toJSONString(rs);//System.out.println("jsontest:" + jsontest);} protected static String GetStationVolume() throws Exception {Map m = new HashMap(); m.put("syncYear", URLEncoder.encode("2019", "utf-8"));String url = "http://localhost:8080/BIP_Api/yptbase/newHrm/GetStationVolume";//String url = "http://10.182.5.176:8183/BIPApi/yptbase/newHrm/GetStationVolume"; // 测试环境return request(url, null, m);}
/** * httpclient * * @param path * @param json * @param maps * @return * @throws Exception */public static String request(String path, String json, Map maps) throws Exception {path = path + "?";
for (Map.Entry item : maps.entrySet()) {path += (item.getKey() + "=" + item.getValue() + "&");}Date startDate = new Date();URL url = new URL(path.substring(0, path.length() - 1));System.out.println("url:" + url.toString());HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setRequestMethod("POST");conn.setDoOutput(true);conn.setRequestProperty("Content-Type", "application/json; charset=" + "UTF-8");if (json != null) {byte[] data = json.getBytes("UTF-8");conn.setRequestProperty("Content-Length", String.valueOf(data.length));}conn.setConnectTimeout(60 * 1000);OutputStream outStream = conn.getOutputStream();
if (json != null) {byte[] data = json.getBytes("UTF-8");outStream.write(data);}outStream.flush();outStream.close();String result = "";System.out.println("status:" + conn.getResponseCode());if (conn.getResponseCode() == HttpURLConnection.HTTP_OK) {
InputStream inStream = conn.getInputStream();// result = new String(readStream(inStream));result = readInStream(inStream);}Date endDate = new Date();double timeout = DateUtils.getSecsBetween(startDate, endDate);
return result;}
public static String readInStream(InputStream inStream) throws Exception {StringBuffer content = new StringBuffer();String tempStr = "";BufferedReader in = new BufferedReader(new InputStreamReader(inStream, "UTF-8"));while ((tempStr = in.readLine()) != null) {content.append(tempStr);}in.close();inStream.close();return content.toString();}
/** * ��ȡ�� * * @param inStream * @return �ֽ����� * @throws Exception */public static byte[] readStream(InputStream inStream) throws Exception {ByteArrayOutputStream outSteam = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = -1;while ((len = inStream.read(buffer)) != -1) {outSteam.write(buffer, 0, len);}outSteam.close();inStream.close();return outSteam.toByteArray();}}
java测试接口_Java测试普通Java接口记录-TestHrmInterface相关推荐
- java 集合 接口_Java集合之Collection接口
1 - Java集合介绍 /* 1. 一方面, 面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象 的操作,就要对对象进行存储. 2. 另一方面,使用Array存储对象方面具有一些弊 端,而 ...
- java怎么学好 用好接口_Java公开课|Java的实现接口怎么用,这才是学习好Java必备的实用函数,你会吗...
[摘要]作为一门面向对象编程语言,Java吸收了C++语言的优点,也展现了其强大的一面,我们能在各个地方看到其功能强大和简单易用的两个特征,当然,也吸引了很多程序员的注意力,所以就有人想了解Java的 ...
- java.util接口_Java 8中java.util.function包中的谓词和使用者接口
java.util接口 在上一篇文章中,我写了关于Function接口的内容 ,它是java.util.package的一部分. 我还提到了Predicate接口,它是同一包的一部分,在这篇文章中,我 ...
- java 抽象接口_JAVA中的“抽象接口”
在程序设计过程中,读者很可能遇到这样一种困境:设计了一个接口,但实现这个接口的子类并不需要实现接口中的全部方法,也就是说,接口中的方法过多,对于某些子类是多余的,我们不得不浪费的写上一个空的实现. 今 ...
- 描述java源程序构成_Java第二章Java程序设计
<Java第二章Java程序设计>由会员分享,可在线阅读,更多相关<Java第二章Java程序设计(140页珍藏版)>请在人人文库网上搜索. 1.第2章 Java基本语法,2. ...
- java 虚拟机规范_Java虚拟机规范----Java虚拟机结构
Java体系和一些基本概念 Java平台的结构图: JVM与JRE.JDK关系? JVM:Java Virtual Machine(Java虚拟机),负责执行符合规范的Class文件 JRE: Jav ...
- java基本数据类型_Java面试题Java中有几种基本数据类型?它们分别占多大字节?...
点击上方"千锋Java学院",选择"置顶公众号" 每天一道面试模拟真题及解析 课前导读 ●回复"每日一练"获取以前的题目,持续更新! ●我希 ...
- java 获取注释_Java面试题Java语言有哪些注释的方式?
点击上方"千锋Java学院",选择"置顶公众号" 每天一道面试模拟真题及解析 课前导读 ●回复"每日一练"获取以前的题目,持续更新! ●我希 ...
- javq接口_Java为什么要使用接口_java接口怎么使用
Java接口是什么 Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能). 接口 ...
- java http客户端_java 11 标准Java异步HTTP客户端
这是 Java 9 开始引入的一个处理 HTTP 请求的的 HTTP Client API,该 API 支持同步和异步,而在 Java 11 中已经为正式可用状态,你可以在 java.net 包中找到 ...
最新文章
- 机器学习:基于Knn算法的用户属性判断方案设计
- Laravel 集成 JPush 极光推送指北
- python程序设计报告-20192416 实验四《Python程序设计》综合实践报告
- mySql完全手册2011031401
- live messenger与稀疏文件—Sparse File Bit
- 1001 字符串“水”题(二进制,map,哈希)
- 如何解决pip更新问题
- java session持久化_Session的生命周期和持久化
- C#语言基础——7月21日
- python-scrapy框架学习笔记
- 虚拟服务器ftp文件权限修改,虚拟主机用户ftp和apache用户文件互操作权限解决方法...
- go日志收集系统项目简介
- idea社区版创建springboot_idea社区版+spring boot
- 霍华德大学计算机科学,霍华德大学有哪些专业
- 以中国南方航空为竞品结构化分析并设计航空购票网页
- STM32 SWD模式下SPI3无法使用的问题
- echarts地图导航飞线与层级穿透
- 双11中奖名单公布啦
- 计算机硬件 OR CX 1,月亮雨小组的天地
- SpiderFlow平台v0.3.0初次使用并爬取薄荷网的热量和减法功效
热门文章
- 初学Rman 写的备份脚本
- 计算机基础知识试题和答案6,计算机基础知识试题及答案选择题(九)
- 使用Mathcad解受迫振动微分方程并画图
- [2018.10.10 T1] 餐馆
- setFitView的zoom只是整数,导致缩放尺寸不合适的解决方案
- C语言文件的存储和处理实验报告,c语言文件处理实验报告(6页)-原创力文档...
- Tally项目笔记001
- mysql5.7.13编译安装_编译安装MySQL-5.7.13
- python整体设计目标怎么写_设计模式及Python实现
- ceph搭建_【实战演练】基于各种存储模拟器与软件存储的存储实验07-Ceph分布式存储的3种存储类型使用方法...