JAVA接口传递参数(POST),从接口接收数据(JSON)
2016-04-13 17:01
591 查看
1,给接口传递json格式的数据
2.从接口获取json格式数据
package fkJAVA.Array; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import net.sf.json.JSONObject; public class AppAddTest { public static final String ADD_URL = "http://192.168.1.1:8080/*.controller/*.action"; public static void appadd() { try { URL url = new URL(ADD_URL); HttpURLConnection connection = (HttpURLConnection) url .openConnection(); connection.setDoOutput(true); connection.setDoInput(true); connection.setRequestMethod("POST"); connection.setUseCaches(false); connection.setInstanceFollowRedirects(true); connection.setRequestProperty("connection", "Keep-Alive"); //connection.setRequestProperty("Content-Type", "text/plain; charset=utf-8"); connection.connect(); //POST请求 DataOutputStream out = new DataOutputStream( connection.getOutputStream()); JSONObject obj = new JSONObject(); String message = java.net.URLEncoder.encode("哈哈哈","utf-8"); obj.element("detail", "df"); obj.element("TEXT1", "asd"); obj.element("TEXT2", message); out.writeBytes("data="+obj.toString()); System.out.println("data="+o c291 bj.toString()); out.flush(); out.close(); //读取响应 BufferedReader reader = new BufferedReader(new InputStreamReader( connection.getInputStream())); String lines; StringBuffer sb = new StringBuffer(""); while ((lines = reader.readLine()) != null) { lines = new String(lines.getBytes(), "utf-8"); sb.append(lines); } System.out.println(sb); reader.close(); connection.disconnect(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { appadd(); } }
2.从接口获取json格式数据
package fkJAVA.Array; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.URL; import java.net.URLConnection; import java.sql.Timestamp; import java.util.concurrent.ConcurrentHashMap; import net.sf.json.JSONArray; import net.sf.json.JSONException; import net.sf.json.JSONObject; import org.springframework.web.HttpRequestHandler; public class JAVAURL { /** * @param args */ public static void main(String[] args) { String url = "http://192.168.1.1:8080/*.controller.do/*.action"; System.out.println("URL:"+url); StringBuffer json = new StringBuffer(); try { //实例一个url和URLConnection URL oracle = new URL(url); //打开链接 URLConnection yc = oracle.openConnection(); //输入流作参数传进InputStreamReader并用BufferedReader接受 BufferedReader in = new BufferedReader(new InputStreamReader( yc.getInputStream())); String inputLine = null; //一直读到空,并设置流编码是UTF8 while ( (inputLine = in.readLine()) != null) { json.append(new String(inputLine.getBytes(),"GBK")); } //记得关闭连接 in.close(); } catch (Exception e) { e.printStackTrace(); } try { JSONArray jn = JSONArray.fromObject(json.toString()); if(jn.size()>0){ for (int i = 0; i < jn.size(); i++) { JSONObject jo = (JSONObject) jn.get(i); System.out.println(jo.get("id")); System.out.println(jo.get("fdName")); } System.out.println(jn); } System.out.println("数据大小:"+jn.size()); } catch (Exception e) { e.printStackTrace(); System.out.println("连接超时!"); } } }
相关文章推荐
- 使用Spring CommonsMultipartResolver 上传文件
- 疯狂JAVA——数组
- SpringMVC @RequestBody接收Json对象字符串
- eclipse配置背景颜色以及字体
- java中synchronized的用法详解
- java strtus2 DynamicMethodInvocation配置入门 " ! "访问action里面的方法
- Spring与Mybatis事务配置
- [Java] 使用转换流来处理标准输入
- MyEclipse从SVN导入Maven项目后右键无Maven4MyEclipse选项
- java实现定时任务的三种方法
- 对一致性Hash算法,java代码实现的深入研究
- java多线程的三种实现方式
- 浅谈Java的反射机制
- JAVA运行脚本语言(Scripting)
- spring 循环注入:is there an unresolvable circular reference的解决方案
- Struts2利用iText导出word文档
- JAVA 接口
- Spring和Mybatis整合,配置文件
- 用Java实现线性表中的顺序存储的学习和源码(合并两个线性表)
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小