java实现Post JSON请求
post json 简单参数
post json 简单参数1. 什么是 post json 简单参数?在网络编程中,post json 简单参数是一种用于向服务器发送数据的方式。
它的格式是 JSON 格式的数据,可以包含多个参数,用于向服务器传递信息或执行相应的操作。
2. post json 简单参数的格式post json 简单参数的格式通常为:{"参数1": "数值1","参数2": "数值2",...}其中,参数和数值之间使用冒号分隔,不同参数之间使用逗号分隔。
3. post json 简单参数的使用场景post json 简单参数通常用于前端向后端发送数据或请求。
当用户在前端页面上填写了一些信息并点击提交按钮时,可以将这些信息打包成JSON 数据并通过 post 请求发送给后端服务器。
4. post json 简单参数的优点相比于传统的表单提交方式,post json 简单参数具有以下优点:1) 可以包含更复杂的数据结构,例如嵌套对象或数组;2) 可以方便地在前端和后端之间传递数据;3) 可以使用现代化的网络编程框架,如 Axios、Fetch 等。
5. post json 简单参数的示例假设有一个前端页面,其中包含一个用户名和密码的表单。
用户在该表单中输入了用户名和密码,并点击了提交按钮。
接下来,前端页面可以使用 post json 简单参数的方式将这些数据发送给后端服务器,示例如下:{"username": "张三","password": "xxx"}当后端收到这个 post 请求后,就可以解析出用户名和密码,并进行相应的验证或处理。
6. post json 简单参数的注意事项在使用 post json 简单参数时,需要注意以下几点:1) 需要确保 JSON 数据的合法性,即参数和数值的对应关系要正确,格式要符合 JSON 规范;2) 需要考虑跨域请求的问题,确保前端和后端服务器在同一域下;3) 需要考虑网络安全性,避免因为 post json 简单参数的使用而引发安全漏洞。
java实现PostJSON请求
java实现PostJSON请求java实现Post JSON请求具体代码如下:package com.sunkey.httpTest;import java.io.DataOutputStream;import java.io.InputStream;import /doc/016079698.html.URL;import /doc/016079698.html.URLConnection;import /doc/016079698.htmlmons.io.IOUtils;public class HttpPostJson {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubString URL = "http://localhost:18090";String Json = findXmlInfo();Json = "{\"姓名\" : \"⼤憨\",\"年龄\" : 24}";String postResult = doHttpPost(Json,URL);System.out.println("postResult:"+postResult);}private static String findXmlInfo() {// TODO Auto-generated method stubreturn null;}public static String doHttpPost(String xmlInfo,String URL){ System.out.println("发起的数据:"+xmlInfo); byte[] xmlData = xmlInfo.getBytes(); InputStream instr = null;java.io.ByteArrayOutputStream out = null;try{URL url = new URL(URL);URLConnection urlCon = url.openConnection();urlCon.setDoOutput(true);urlCon.setDoInput(true);urlCon.setUseCaches(false);urlCon.setRequestProperty("Content-Type", "text/xml");urlCon.setRequestProperty("Content-length",String.valueOf(xmlData.length)); System.out.println(String.valueOf(xmlData.length));DataOutputStream printout = new DataOutputStream(urlCon.getOutputStream()); printout.write(xmlData);printout.flush();printout.close();instr = urlCon.getInputStream();byte[] bis = IOUtils.toByteArray(instr);String ResponseString = new String(bis, "UTF-8");if ((ResponseString == null) || ("".equals(ResponseString.trim()))) {System.out.println("返回空");}System.out.println("返回数据为:" + ResponseString);return ResponseString;}catch(Exception e){e.printStackTrace();return "0";}finally {try {out.close();instr.close();}catch (Exception ex) {return "0";}}}}。
hutool中的post请求 -回复
hutool中的post请求-回复Hutool中的post请求是Hutool这个Java工具包中的一个功能,它允许我们通过HTTP协议向指定的URL发送POST请求,并获得服务器的响应。
在开发过程中,我们常常需要与服务器进行数据交互,POST请求是其中一种常用的方式。
Hutool中的post请求功能提供了简洁、方便的方法,使得我们能够轻松地实现与服务器的数据交互。
一、Hutool简介Hutool是一个Java工具包,它以功能强大、简洁优雅而著称。
它提供了众多的工具类,涵盖了一系列的功能,例如处理字符串、日期、文件、加密解密等等。
Hutool中的post请求功能就是其中之一,它通过简单易用的方法,为我们实现与服务器的数据交互提供了便利。
二、为什么要使用post请求在很多场景下,我们需要向服务器发送请求并获取数据。
常见的数据交互方式包括GET、POST、PUT和DELETE等。
相较于GET请求,POST请求具有以下优势:1. 安全性更好:POST请求将请求参数放在请求体中传输,相对于GET请求将参数放在URL中,POST请求更为安全,可以对参数加密,降低被拦截和篡改的风险。
2. 传输数据量大:GET请求将参数放在URL中传输,URL长度有限制,而POST请求将参数放在请求体中,没有长度限制,适合传输大量数据。
3. 隐藏参数信息:GET请求将参数放在URL中传输,会在浏览器历史记录、服务器日志等地方留下记录,POST请求将参数放在请求体中传输,能够更好地隐藏参数信息。
三、Hutool中的post请求方法Hutool中的HttpUtil类提供了post方法,用于发送POST请求。
它的方法签名如下:`public static HttpResponse post(String url, Map<?, ?> paramMap)`参数url为请求的URL地址,paramMap为请求的参数,是一个键值对形式的Map。
Java后端发出post请求带参数并接收返回的json
Java后端发出post请求带参数并接收返回的json 核⼼代码:参数格式:“key1=value1&key2=value2”/*** sendUrl (远程请求的URL)* param (远程请求参数)* JSONObject (远程请求返回的JSON)*/private JSONObject sendPostUrl(String url, String param){PrintWriter out = null;BufferedReader in = null;JSONObject jsonObject = null;String result = "";try {URL realUrl = new URL(url);// 打开和URL之间的连接URLConnection conn = realUrl.openConnection();// 发送POST请求必须设置如下两⾏conn.setDoOutput(true);conn.setDoInput(true);// 获取URLConnection对象对应的输出流(设置请求编码为UTF-8)out = new PrintWriter(new OutputStreamWriter(conn.getOutputStream(), "UTF-8"));// 发送请求参数out.print(param);// flush输出流的缓冲out.flush();// 获取请求返回数据(设置返回数据编码为UTF-8)in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));String line;while ((line = in.readLine()) != null) {result += line;}jsonObject = JSONObject.fromObject(result);System.out.println(jsonObject);} catch (IOException e) {e.printStackTrace();} finally{try{if(out!=null){out.close();}if(in!=null){in.close();}}catch(IOException ex){ex.printStackTrace();}}return jsonObject;}调⽤⽅法:public JSONObject send(String username, String password){String params = "username=" + username+ "&password=" + password;JSONObject jsonObject = sendPostUrl("https:///login/", params);return jsonObject;}。
java中的http请求的封装(GET、POST、form表单形式)
java中的http请求的封装(GET、POST、form表单形式)⽬前JAVA实现HTTP请求的⽅法⽤的最多的有两种:⼀种是通过HTTPClient这种第三⽅的开源框架去实现。
HTTPClient对HTTP的封装性⽐较不错,通过它基本上能够满⾜我们⼤部分的需求,HttpClient3.1 是 mons.httpclient下操作远程 url的⼯具包,虽然已不再更新,但实现⼯作中使⽤httpClient3.1的代码还是很多,HttpClient4.5是org.apache.http.client下操作远程 url的⼯具包,最新的;另⼀种则是通过HttpURLConnection去实现,HttpURLConnection是JAVA的标准类,是JAVA⽐较原⽣的⼀种实现⽅式。
第⼀种⽅式:java原⽣HttpURLConnectionpackage com.mobile.utils;import com.alibaba.fastjson.JSONObject;import org.apache.log4j.Logger;import java.io.*;import .HttpURLConnection;import .MalformedURLException;import .URL;import java.util.*;public class HttpUtil {static Logger log = Logger.getLogger(HttpUtil.class);/*** 向指定URL发送GET⽅法的请求** @param httpurl* 请求参数⽤?拼接在url后边,请求参数应该是 name1=value1&name2=value2 的形式。
* @return result 所代表远程资源的响应结果*/public static String doGet(String httpurl) {HttpURLConnection connection = null;InputStream is = null;BufferedReader br = null;String result = null;// 返回结果字符串try {// 创建远程url连接对象URL url = new URL(httpurl);// 通过远程url连接对象打开⼀个连接,强转成httpURLConnection类connection = (HttpURLConnection) url.openConnection();// 设置连接⽅式:getconnection.setRequestMethod("GET");// 设置连接主机服务器的超时时间:15000毫秒connection.setConnectTimeout(15000);// 设置读取远程返回的数据时间:60000毫秒connection.setReadTimeout(60000);// 发送请求connection.connect();// 通过connection连接,获取输⼊流if (connection.getResponseCode() == 200) {is = connection.getInputStream();// 封装输⼊流is,并指定字符集br = new BufferedReader(new InputStreamReader(is, "UTF-8"));// 存放数据StringBuffer sbf = new StringBuffer();String temp = null;while ((temp = br.readLine()) != null) {sbf.append(temp);sbf.append("\r\n");}result = sbf.toString();}} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {// 关闭资源if (null != br) {try {br.close();} catch (IOException e) {e.printStackTrace();}}if (null != is) {try {is.close();} catch (IOException e) {e.printStackTrace();}}connection.disconnect();// 关闭远程连接}return result;}/*** 向指定 URL 发送POST⽅法的请求** @param httpUrl* 发送请求的 URL* @param param* 请求参数应该是{"key":"==g43sEvsUcbcunFv3mHkIzlHO4iiUIT R7WwXuSVKTK0yugJnZSlr6qNbxsL8OqCUAFyCDCoRKQ882m6cTTi0q9uCJsq JJvxS+8mZVRP/7lWfEVt8/N9mKplUA68SWJEPSXyz4MDeFam766KEyvqZ99d"}的形式 * @return所代表远程资源的响应结果*/public static String doPost(String httpUrl, String param) {HttpURLConnection connection = null;InputStream is = null;OutputStream os = null;BufferedReader br = null;String result = null;try {URL url = new URL(httpUrl);// 通过远程url连接对象打开连接connection = (HttpURLConnection) url.openConnection();// 设置连接请求⽅式connection.setRequestMethod("POST");// 设置连接主机服务器超时时间:15000毫秒connection.setConnectTimeout(15000);// 设置读取主机服务器返回数据超时时间:60000毫秒connection.setReadTimeout(60000);// 默认值为:false,当向远程服务器传送数据/写数据时,需要设置为trueconnection.setDoOutput(true);// 默认值为:true,当前向远程服务读取数据时,设置为true,该参数可有可⽆connection.setDoInput(true);// 设置传⼊参数的格式:请求参数应该是 name1=value1&name2=value2 的形式。
java 带证书的post请求
1. 确定主题:java 带证书的post请求2. 介绍主题:在Java中进行带证书的POST请求是一项常见的任务,通常用于与安全全球信息站进行通信或进行身份验证。
本文章将介绍如何使用Java来进行带证书的POST请求,并提供一些实用的代码示例。
文章将讨论与证书相关的一些常见问题,并提供相应的解决方案。
3. 确定目录结构:3.1 什么是带证书的POST请求?3.2 使用Java进行带证书的POST请求的基本步骤3.3 示例代码3.4 常见问题及解决方案3.5 结束语4. 什么是带证书的POST请求?在进行与安全全球信息站通信或进行身份验证时,通常需要在HTTP请求中包含证书。
证书是一种用于证明通信方身份的数字凭证,它可以帮助服务器验证客户端的合法性。
带证书的POST请求是指在进行POST请求时,将证书作为一部分发送给目标服务器。
在Java中,可以通过一些简单的代码来实现这一功能。
5. 使用Java进行带证书的POST请求的基本步骤在Java中进行带证书的POST请求的基本步骤如下:5.1 创建URL对象并打开连接5.2 配置连接5.3 设置证书5.4 发送请求5.5 接收响应下面将通过示例代码来详细介绍这些步骤。
6. 示例代码```javaimport java.io.*;import .HttpURLConnection;import .URL;import .ssl.HttpsURLConnection; import .ssl.KeyManagerFactory; import .ssl.SSLContext;import .ssl.SSLSocketFactory;public class PostWithCert {public static void m本人n(String[] args) throws Exception { String url = "xxx";String certPath = "/path/to/certificate";String certPassword = "password";// 创建URL对象并打开连接URL obj = new URL(url);HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();// 配置连接con.setRequestMethod("POST");con.setRequestProperty("Content-Type", "application/json");// 设置证书KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");KeyStore ks = KeyStore.getInstance("JKS");FileInputStream fis = new FileInputStream(certPath);ks.load(fis, certPassword.toCharArray());kmf.init(ks, certPassword.toCharArray());SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(kmf.getKeyManagers(), null, null);SSLSocketFactory sf = sslContext.getSocketFactory(); con.setSSLSocketFactory(sf);// 发送请求con.setDoOutput(true);DataOutputStream wr = newDataOutputStream(con.getOutputStream());wr.writeBytes("data=data1");wr.flush();wr.close();// 接收响应int responseCode = con.getResponseCode();BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));String inputLine;StringBuffer response = new StringBuffer();while ((inputLine = in.readLine()) != null) {response.append(inputLine);}in.close();// 打印响应结果System.out.println(response.toString());}}```7. 常见问题及解决方案在使用Java进行带证书的POST请求时,可能会遇到一些常见问题。
java 中post 和get方法
java 中post 和get方法
Java中的POST和GET方法是HTTP通信协议中常用的两种方法,分别用于向服务器发送数据和从服务器获取数据。
POST 方法是一种向服务器提交数据的方式,可以通过 HTTP 请求体传递请求参数。
对于大量数据的传递,POST 方法更为合适。
在Java 中,可以使用 HttpURLConnection 或 HttpClient 类来实现POST 请求。
GET 方法则是一种向服务器请求数据的方式,可以将请求参数通过 URL 传递。
GET 方法主要用于获取数据,对于数据的修改,应该使用 POST 方法。
在 Java 中,可以使用 URLConnection 或HttpClient 类来实现 GET 请求。
在使用 POST 和 GET 方法时,需要注意以下几点:
1. POST 方法适用于传输大量数据,而 GET 方法适用于传输小量数据。
2. POST 方法的请求参数通过请求体传递,而 GET 方法的请求参数通过 URL 传递,因此 GET 方法的请求参数会暴露在 URL 中。
3. POST 方法的请求参数可以是任意类型的数据,而 GET 方法的请求参数只能是字符串类型的数据。
4. POST 方法的请求可以提交文件等类型的数据,而 GET 方法只能提交文本数据。
总之,在选择使用 POST 或 GET 方法时,需要根据具体情况来决定使用哪种方法,以达到最好的效果。
resttemplate json 列表参数
使用RestTemplate发送JSON列表参数
RestTemplate是Spring框架中用于发送HTTP请求的一个类。
当需要向RESTful 服务发送JSON数据时,RestTemplate可以方便地实现这一需求。
特别是当需要传递JSON列表参数时,RestTemplate提供了一种简单有效的方法。
下面是一个示例,展示了如何使用RestTemplate发送包含JSON列表参数的请求:
1.首先,确保你的项目中已经添加了Spring Web的依赖。
如果你使用的是Maven,
可以在pom.xml文件中添加以下依赖:
2.创建一个简单的Spring Boot应用程序,并在其中使用RestTemplate发送
请求。
3.创建一个包含JSON列表的Java对象。
例如,创建一个名为MyRequestBody
的类,其中包含一个List<String>类型的属性:
4.使用RestTemplate发送POST请求,将MyRequestBody对象作为请求体发送。
你需要将URL和HTTP方法作为参数传递给RestTemplate的正确方法。
以下是一个示例:
在上面的示例中,我们创建了一个名为MyRequestBody的简单Java对象,该对象包含一个字符串列表。
然后,我们使用RestTemplate发送POST请求,将MyRequestBody对象作为请求体发送。
最后,我们打印出响应。
resttemplate中postforobject
resttemplate中postforobject RestTemplate是一个用于发送HTTP请求的Java库,它提供了简单和方便的API来发送各种类型的HTTP请求,包括GET、POST、PUT和DELETE 等。
其中,postForObject方法是RestTemplate类的一个方法,用于发送POST请求并返回指定类型的结果对象。
本文将详细介绍postForObject 方法的用法和原理。
一、postForObject方法的基本用法postForObject方法的定义如下:public <T> T postForObject(String url, Object request, Class<T> responseType, Object... uriVariables)throws RestClientException方法的参数解释如下:- url:表示要发送POST请求的目标URL。
- request:表示要发送的请求对象,可以是一个简单的Java对象或任何可序列化为JSON的对象。
- responseType:表示响应的类型,即要返回的结果对象的类型。
- uriVariables:可选参数,表示URL中的占位符参数。
该方法的作用是将请求对象转换为JSON,并将其作为请求的正文发送到目标URL,然后将返回的结果JSON转换为指定的响应类型对象。
下面通过一个示例来演示postForObject方法的用法。
假设我们要向一个名为的API发送POST请求,该请求要求发送一个包含用户名和密码的数据,然后返回一个User对象作为响应。
可以按照以下步骤来完成:1. 创建一个User类,该类包含用户名和密码属性,以及相应的getter 和setter方法。
javapublic class User {private String username;private String password;getter and setter methods}2. 创建一个RestTemplate对象。
java模拟post请求发送json的例子
java模拟post请求发送json的例⼦java模拟post请求发送json,⽤两种⽅式实现,第⼀种是HttpURLConnection发送post请求,第⼆种是使⽤httpclient模拟post 请求,⽅法⼀:package main.utils;import java.io.*;import .HttpURLConnection;import .URL;public class HttpUtilTest {Log log = new Log(this.getClass());//初始化⽇志类/*** @作⽤使⽤urlconnection* @param url* @param Params* @return* @throws IOException*/public String sendPost(String url,String Params)throws IOException{OutputStreamWriter out = null;BufferedReader reader = null;String response="";try {URL httpUrl = null; //HTTP URL类⽤这个类来创建连接//创建URLhttpUrl = new URL(url);//建⽴连接HttpURLConnection conn = (HttpURLConnection) httpUrl.openConnection();conn.setRequestMethod("POST");conn.setRequestProperty("Content-Type", "application/json");conn.setRequestProperty("connection", "keep-alive");conn.setUseCaches(false);//设置不要缓存conn.setInstanceFollowRedirects(true);conn.setDoOutput(true);conn.setDoInput(true);conn.connect();//POST请求out = new OutputStreamWriter(conn.getOutputStream());out.write(Params);out.flush();//读取响应reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));String lines;while ((lines = reader.readLine()) != null) {lines = new String(lines.getBytes(), "utf-8");response+=lines;}reader.close();// 断开连接conn.disconnect();(response.toString());} catch (Exception e) {System.out.println("发送 POST 请求出现异常!"+e);e.printStackTrace();}//使⽤finally块来关闭输出流、输⼊流finally{try{if(out!=null){out.close();}if(reader!=null){reader.close();}}catch(IOException ex){ex.printStackTrace();}}return response;}}⽅法⼆:使⽤httpclient实现import java.io.UnsupportedEncodingException;import .URLEncoder;import main.utils.Log;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpPost;import org.apache.http.entity.ContentType;import org.apache.http.entity.StringEntity;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;//post请求⽅法public String sendPost(String url, String data) {String response = null;("url: " + url);("request: " + data);try {CloseableHttpClient httpclient = null;CloseableHttpResponse httpresponse = null;try {httpclient = HttpClients.createDefault();HttpPost httppost = new HttpPost(url);StringEntity stringentity = new StringEntity(data,ContentType.create("text/json", "UTF-8"));httppost.setEntity(stringentity);httpresponse = httpclient.execute(httppost);response = EntityUtils.toString(httpresponse.getEntity());("response: " + response);} finally {if (httpclient != null) {httpclient.close();}if (httpresponse != null) {httpresponse.close();}}} catch (Exception e) {e.printStackTrace();}return response;}以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
java通过发送json,post请求,返回json数据的方法
java通过发送json,post请求,返回json数据的⽅法实例如下所⽰:import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import .HttpURLConnection;import .URL;import org.json.JSONArray;import org.json.JSONObject;public class GetJsonData {public static String getJsonData(JSONObject jsonParam,String urls) {StringBuffer sb=new StringBuffer();try {;// 创建url资源URL url = new URL(urls);// 建⽴http连接HttpURLConnection conn = (HttpURLConnection) url.openConnection();// 设置允许输出conn.setDoOutput(true);// 设置允许输⼊conn.setDoInput(true);// 设置不⽤缓存conn.setUseCaches(false);// 设置传递⽅式conn.setRequestMethod("POST");// 设置维持长连接conn.setRequestProperty("Connection", "Keep-Alive");// 设置⽂件字符集:conn.setRequestProperty("Charset", "UTF-8");// 转换为字节数组byte[] data = (jsonParam.toString()).getBytes();// 设置⽂件长度conn.setRequestProperty("Content-Length", String.valueOf(data.length));// 设置⽂件类型:conn.setRequestProperty("contentType", "application/json");// 开始连接请求conn.connect();OutputStream out = new DataOutputStream(conn.getOutputStream()) ;// 写⼊请求的字符串out.write((jsonParam.toString()).getBytes());out.flush();out.close();System.out.println(conn.getResponseCode());// 请求返回的状态if (HttpURLConnection.HTTP_OK == conn.getResponseCode(){System.out.println("连接成功");// 请求返回的数据InputStream in1 = conn.getInputStream();try {String readLine=new String();BufferedReader responseReader=new BufferedReader(new InputStreamReader(in1,"UTF-8"));while((readLine=responseReader.readLine())!=null){sb.append(readLine).append("\n");}responseReader.close();System.out.println(sb.toString());} catch (Exception e1) {e1.printStackTrace();}} else {System.out.println("error++");}} catch (Exception e) {}return sb.toString();}public static void main(String[] args) {JSONObject jsonParam = new JSONObject();jsonParam.put("id", "1401_1406");jsonParam.put("device_size", "480x720");String url="";String data=GetJsonData.getJsonData(jsonParam,url);//返回的是⼀个[{}]格式的字符串时:JSONArray jsonArray = new JSONArray(data);//返回的是⼀个{}格式的字符串时:/*JSONObject obj= new JSONObject(data);*/}}以上这篇java 通过发送json,post请求,返回json数据的⽅法就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
JAVA发送POSTGETPUTDELETE请求,HEADER传参,BODY参数为JSON格式
JAVA发送POSTGETPUTDELETE请求,HEADER传参,BODY参数为JSON格式1、maven引⼊<dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpcore</artifactId><version>4.4.4</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpmime</artifactId><version>4.5</version></dependency>2、封装post请求⽅法public static String httpPost(String url,Map map){// 返回bodyString body = null;// 获取连接客户端⼯具CloseableHttpClient httpClient = HttpClients.createDefault();CloseableHttpResponse httpResponse=null;// 2、创建⼀个HttpPost请求HttpPost post = new HttpPost(url);// 5、设置header信息 /**header中通⽤属性*/ post.setHeader("Accept","*/*"); post.setHeader("Accept-Encoding","gzip, deflate"); post.setHeader("Cache-Control","no-cache"); post.setHeader("Connection", "keep-alive"); post.setHeader("Content-Type", "application/json;charset=UTF-8"); /**业务参数*/ post.setHeader("test1","test1"); post.setHeader("test2",2);// 设置参数if (map != null) {//System.out.println(JSON.toJSONString(map));try {StringEntity entity1=new StringEntity(JSON.toJSONString(map),"UTF-8");entity1.setContentEncoding("UTF-8");entity1.setContentType("application/json");post.setEntity(entity1);// 7、执⾏post请求操作,并拿到结果httpResponse = httpClient.execute(post);// 获取结果实体HttpEntity entity = httpResponse.getEntity();if (entity != null) {// 按指定编码转换结果实体为String类型body = EntityUtils.toString(entity, "UTF-8");}try {httpResponse.close();httpClient.close();} catch (IOException e) {e.printStackTrace();}} catch (Exception e) {e.printStackTrace();}}return body;}3、封装GET请求⽅法public static String httpGet(String url){// 获取连接客户端⼯具CloseableHttpClient httpClient = HttpClients.createDefault();CloseableHttpResponse httpResponse=null;String finalString = null;HttpGet httpGet = new HttpGet(url);/**公共参数添加⾄httpGet*//**header中通⽤属性*/ httpGet.setHeader("Accept","*/*"); httpGet.setHeader("Accept-Encoding","gzip, deflate"); httpGet.setHeader("Cache-Control","no-cache"); httpGet.setHeader("Connection", "keep-alive"); httpGet.setHeader("Content-Type", "application/json;charset=UTF-8"); /**业务参数*/ httpGet.setHeader("test1","test1"); httpGet.setHeader("test2",2);try {httpResponse = httpClient.execute(httpGet);HttpEntity entity = httpResponse.getEntity();finalString= EntityUtils.toString(entity, "UTF-8");try {httpResponse.close();httpClient.close();} catch (IOException e) {e.printStackTrace();}} catch (IOException e) {e.printStackTrace();}return finalString;}4、封装put请求public static String httpPut(String url,Map map){String encode = "utf-8";//HttpClients.createDefault()等价于 HttpClientBuilder.create().build();CloseableHttpClient closeableHttpClient = HttpClients.createDefault();HttpPut httpput = new HttpPut(url);// 5、设置header信息/**header中通⽤属性*/ httpput.setHeader("Accept","*/*"); httpput.setHeader("Accept-Encoding","gzip, deflate"); httpput.setHeader("Cache-Control","no-cache"); httpput.setHeader("Connection", "keep-alive"); httpput.setHeader("Content-Type", "application/json;charset=UTF-8"); /**业务参数*/ httpput.setHeader("test1","test1"); httpput.setHeader("test2",2);//组织请求参数StringEntity stringEntity = new StringEntity(JSON.toJSONString(map), encode); httpput.setEntity(stringEntity);String content = null;CloseableHttpResponse httpResponse = null;try {//响应信息httpResponse = closeableHttpClient.execute(httpput);HttpEntity entity = httpResponse.getEntity();content = EntityUtils.toString(entity, encode);} catch (Exception e) {e.printStackTrace();}finally{try {httpResponse.close();} catch (IOException e) {e.printStackTrace();}}try {closeableHttpClient.close(); //关闭连接、释放资源} catch (IOException e) {e.printStackTrace();}return content;}5、封装delete请求public static String httpDelete(String url){//HttpResponse response = new HttpResponse();String encode = "utf-8";String content = null;//since 4.3 不再使⽤ DefaultHttpClientCloseableHttpClient closeableHttpClient = HttpClientBuilder.create().build();HttpDelete httpdelete = new HttpDelete(url);// 5、设置header信息/**header中通⽤属性*/ httpdelete.setHeader("Accept","*/*"); httpdelete.setHeader("Accept-Encoding","gzip, deflate"); httpdelete.setHeader("Cache-Control","no-cache"); httpdelete.setHeader("Connection", "keep-alive"); httpdelete.setHeader("Content-Type", "application/json;charset=UTF-8"); /**业务参数*/ httpdelete.setHeader("test1","test1"); httpdelete.setHeader("test2",2);CloseableHttpResponse httpResponse = null;try {httpResponse = closeableHttpClient.execute(httpdelete);HttpEntity entity = httpResponse.getEntity();content = EntityUtils.toString(entity, encode);} catch (Exception e) {e.printStackTrace();}finally{try {httpResponse.close();} catch (IOException e) {e.printStackTrace();}}try { //关闭连接、释放资源closeableHttpClient.close();} catch (IOException e) {e.printStackTrace();}return content;}。
java代码post请求参数map字符串
java代码post请求参数map字符串import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;public static void main(String[] args) {Map<String,String> map=new HashMap();map.put("start","0");map.put("limit","10");String param= JSON.toJSONString(map);//JSONObject object=JSON.parseObject(JSON.toJSONString(map))String postValue = sendPost(url, param,8*1000,10*1000, Charset.forName("utf-8"));System.out.println(postValue);}public static String sendPost(String url, String param,int connectTimeout,int readTimeout, Charset charset) {try {URL httpurl = new URL(url);HttpURLConnection httpConn = (HttpURLConnection) httpurl.openConnection();httpConn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; "+ "Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)");httpConn.setConnectTimeout(8 * 1000);httpConn.setReadTimeout(10 * 1000);httpConn.setDoOutput(true);httpConn.setDoInput(true);httpConn.setUseCaches(false);httpConn.setRequestMethod("POST");httpConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=" + ());httpConn.connect();OutputStream outputStream = httpConn.getOutputStream();PrintWriter out = new PrintWriter(outputStream);out.print(param);out.flush();out.close();InputStream inputStream = httpConn.getInputStream();BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, ()));StringBuffer stringBuffer = new StringBuffer();String line = null;while ((line = bufferedReader.readLine()) != null) {stringBuffer.append(line);}String resp = stringBuffer.toString();// System.out.println(resp);if (stringBuffer != null) {try {bufferedReader.close();} catch (IOException var18) {var18.printStackTrace();}}if (inputStream != null) {try {inputStream.close();} catch (IOException var17) {var17.printStackTrace();}}if (outputStream != null) {try {outputStream.close();} catch (IOException var17) {var17.printStackTrace();}}return resp;}catch (IOException e) {throw new RuntimeException(String.format("url:%s,param:%s,message:%s", url, param, e.getMessage()), e);}}。
Java发送Post请求,参数JSON,接收JSON
Java发送Post请求,参数JSON,接收JSON /*** 发送post请求* @param url 路径* @param jsonObject 参数(json类型)* @param encoding 编码格式* @return* @throws ParseException* @throws IOException*/public static String send(String url, JSONObject jsonObject,String encoding) throws ParseException, IOException{String body = "";//创建httpclient对象CloseableHttpClient client = HttpClients.createDefault();//创建post⽅式请求对象HttpPost httpPost = new HttpPost(url);//装填参数StringEntity s = new StringEntity(jsonObject.toString(), "utf-8");s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json"));//设置参数到请求对象中httpPost.setEntity(s);System.out.println("请求地址:"+url);// System.out.println("请求参数:"+nvps.toString());//设置header信息//指定报⽂头【Content-type】、【User-Agent】// httpPost.setHeader("Content-type", "application/x-www-form-urlencoded");httpPost.setHeader("Content-type", "application/json");httpPost.setHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");//执⾏请求操作,并拿到结果(同步阻塞)CloseableHttpResponse response = client.execute(httpPost);//获取结果实体HttpEntity entity = response.getEntity();if (entity != null) {//按指定编码转换结果实体为String类型body = EntityUtils.toString(entity, encoding);}EntityUtils.consume(entity);//释放链接response.close();return body;} 下⾯代码⾃⼰写。
Java用HTTP的方式发送JSON报文请求
Java⽤HTTP的⽅式发送JSON报⽂请求前⾔: 项⽬调⽤第三⽅接⼝时,通常是⽤socket或者http的通讯⽅式发送请求:http 为短连接,客户端发送请求都需要服务器端回送响应,请求结束后,主动释放链接。
Socket为长连接:通常情况下Socket 连接就是 TCP 连接,因此 Socket 连接⼀旦建⽴,通讯双⽅开始互发数据内容,直到双⽅断开连接。
下⾯介绍HTTP的⽅式发送和接收JSON报⽂。
需求: ⽤HTTP的⽅式,向URL为10.10.10.110:8888地址发送json报⽂,返回的结果也是json报⽂。
主要代码如下:1 String resp= null;2 JSONObject obj = new JSONObject();3 obj.put("name", "张三");4 obj.put("age", "18");5 String query = obj.toString();6 ("发送到URL的报⽂为:");7 (query);8 try {9 URL url = new URL("http://10.10.10.110:8888"); //url地址1011 HttpURLConnection connection = (HttpURLConnection) url.openConnection();12 connection.setDoInput(true);13 connection.setDoOutput(true);14 connection.setRequestMethod("POST");15 connection.setUseCaches(false);16 connection.setInstanceFollowRedirects(true);17 connection.setRequestProperty("Content-Type","application/json");18 connection.connect();1920 try (OutputStream os = connection.getOutputStream()) {21 os.write(query.getBytes("UTF-8"));22 }2324 try (BufferedReader reader = new BufferedReader(25 new InputStreamReader(connection.getInputStream()))) {26 String lines;27 StringBuffer sbf = new StringBuffer();28 while ((lines = reader.readLine()) != null) {29 lines = new String(lines.getBytes(), "utf-8");30 sbf.append(lines);31 }32 ("返回来的报⽂:"+sbf.toString());33 resp = sbf.toString();3435 }36 connection.disconnect();3738 } catch (Exception e) {39 e.printStackTrace();40 }finally{41 JSONObject json = (JSONObject)JSON.parse(resp);42 }⽹上还有⼀种拼json发送报⽂的⽅式,也把代码分享出来:1 String resp = null;2 String name = request.getParameter("userName");3 String age = request.getParameter("userAge");4 String query = "{\"name\":\""+name+"\",\"age\":\""+age+"\"}";56 try {7 URL url = new URL("http://10.10.10.110:8888"); //url地址89 HttpURLConnection connection = (HttpURLConnection) url.openConnection();10 connection.setDoInput(true);11 connection.setDoOutput(true);12 connection.setRequestMethod("POST");13 connection.setUseCaches(false);14 connection.setInstanceFollowRedirects(true);15 connection.setRequestProperty("Content-Type","application/json");16 connection.connect();1718 try (OutputStream os = connection.getOutputStream()) {19 os.write(query.getBytes("UTF-8"));20 }2122 try (BufferedReader reader = new BufferedReader(23 new InputStreamReader(connection.getInputStream()))) {24 String lines;25 StringBuffer sbf = new StringBuffer();26 while ((lines = reader.readLine()) != null) {27 lines = new String(lines.getBytes(), "utf-8");28 sbf.append(lines);29 }30 ("返回来的报⽂:"+sbf.toString());31 resp = sbf.toString();3233 }34 connection.disconnect();3536 } catch (Exception e) {37 e.printStackTrace();38 }finally{39 JSONObject json = (JSONObject)JSON.parse(resp);40 }两种⽅式其实都是⼀样的。
java使用common-httpclient包实现post请求方法示例
java使⽤common-httpclient包实现post请求⽅法⽰例前⾔项⽬中需要请求第三⽅接⼝,⽽且要求请求参数数据为json类型的。
本来⾸先使⽤的是httpclient的jar包,但是因为项⽬中已经使⽤了common-httpclient的jar包,引起了冲突,所以不得不使⽤common-httpclient来实现。
⽰例代码:import java.io.BufferedReader;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import .URL;import .URLConnection;import java.util.List;import java.util.Map;import java.util.zip.GZIPInputStream;import mons.httpclient.HttpClient;import mons.httpclient.HttpMethod;import ValuePair;import mons.httpclient.methods.GetMethod;import mons.httpclient.methods.PostMethod;import mons.httpclient.methods.RequestEntity;import mons.httpclient.methods.StringRequestEntity;import mons.io.IOUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HTTPUtils {private static Logger logger = LoggerFactory.getLogger(HTTPUtils.class);/*** post请求* @param url* @param json* @return*/public static String postJosnContent(String url, String Json) throws Exception {// HttpPost method = new HttpPost(url);// DefaultHttpClient httpClient = new DefaultHttpClient();// String ret = null;// try {// StringEntity entity = new StringEntity(Json,"UTF-8");//解决中⽂乱码问题// entity.setContentEncoding("UTF-8");// entity.setContentType("application/json");// method.setEntity(entity);// HttpResponse result = httpClient.execute(method);// ret = EntityUtils.toString(result.getEntity());// } catch (Exception e) {// throw e;// } finally {// method.releaseConnection();// }// return ret;logger.error("请求接⼝参数:" + Json);PostMethod method = new PostMethod(url);HttpClient httpClient = new HttpClient();try {RequestEntity entity = new StringRequestEntity(Json,"application/json","UTF-8");method.setRequestEntity(entity);httpClient.executeMethod(method);logger.error("请求接⼝路径url:" + method.getURI().toString());InputStream in = method.getResponseBodyAsStream();//下⾯将stream转换为StringStringBuffer sb = new StringBuffer();InputStreamReader isr = new InputStreamReader(in, "UTF-8");char[] b = new char[4096];for(int n; (n = isr.read(b)) != -1;) {sb.append(new String(b, 0, n));}String returnStr = sb.toString();return returnStr;} catch (Exception e) {e.printStackTrace();throw e;} finally {method.releaseConnection();}}}总结以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作具有⼀定的参考学习价值,如果有疑问⼤家可以留⾔交流,谢谢⼤家对的⽀持。
Java:HttpPost传输Json数据过长使用HttpServletRequest解析
Java:HttpPost传输Json数据过长使⽤HttpServletRequest解析直接上代码/*** 测试⽣成json数据*/@Testpublic void synYxGoodsInfoTest() {try {String url = "http://10.118.44.14:8070/teshi-web/goods/synYxGoods";GoodsInfo goodsInfo = new GoodsInfo();goodsInfo.setGoods_id(111);goodsInfo.setGoodsName("1231213");goodsInfo.setBrand(1);goodsInfo.setType(1);DefaultHttpClient httpClient = new DefaultHttpClient();HttpPost httpPost = new HttpPost(url);httpPost.addHeader(HTTP.CONTENT_TYPE, "application/json");String jsonstr = JSON.toJSONString(goodsInfo);StringEntity se = new StringEntity(jsonstr);se.setContentType("text/json");se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));httpPost.setEntity(se);HttpResponse response = httpClient.execute(httpPost);//输出调⽤结果if (response != null && response.getStatusLine().getStatusCode() == 200) {String result = EntityUtils.toString(response.getEntity());// ⽣成 JSON 对象JSONObject obj = JSONObject.parseObject(result);String errorcode = obj.getString("errorcode");if ("000".equals(errorcode)) {System.out.println("addHkfishOrder_request_success");}}} catch (Exception e) {System.out.println("======回不来了=======");}}解析/*** 接收数据解析,并通过流返回数据*/@RequestMapping(value = "/synYxGoods")@ResponseBodypublic String synYxGoods(HttpServletResponse response, HttpServletRequest request) throws IOException {//String json = request.getParameter("param"); //这是通过通过get⽅式去url 拼接的键值对,post⽅式取不到值。
java发送post请求并下载返回文件
java发送post请求并下载返回⽂件直接上代码import java.io.*;import .HttpURLConnection;import .URL;import .URLEncoder;import java.util.*;public class ExportPost {public static String url = "http://localhost:8088/file/xxx/download2";public static String cookie = "cookie";public static void main(String[] args) throws Exception {getInternetRes("D:\\demoefile",url,"a.pdf");}public static void getInternetRes(String newUrl, String oldUrl, String fileName) throws Exception {URL url = null;HttpURLConnection con = null;InputStream in = null;FileOutputStream out = null;try {url = new URL(oldUrl);//建⽴http连接,得到连接对象con = (HttpURLConnection) url.openConnection();//设置通⽤的请求头属性con.setDoOutput(true);con.setDoInput(true);con.setRequestMethod("POST"); // 默认是 GET⽅式con.setUseCaches(false); // Post 请求不能使⽤缓存con.setInstanceFollowRedirects(true); //设置本次连接是否⾃动重定向con.setRequestProperty("User-Agent", "Mozilla/5.0");con.setRequestProperty("Content-Type", "application/form-data");// con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");// con.setRequestProperty("Content-Type","application/form-data;charset=utf-8");// boundary就是request头和上传⽂件内容的分隔符String BOUNDARY = "---------------------------123821742118716";con.setRequestProperty("Content-Type","multipart/form-data; boundary=" + BOUNDARY);con.setRequestProperty("Connection","Keep-Alive");//设置与服务器保持连接con.setRequestProperty("Accept-Language", "zh-CN,zh;0.9");con.setRequestProperty("cookie",cookie);StringBuilder sb2 = new StringBuilder();sb2.append("\r\n").append("--").append(BOUNDARY).append("\r\n");sb2.append("Content-Disposition: form-data; name=\"no\"\r\n\r\n");sb2.append("xxx");sb2.append("\r\n").append("--").append(BOUNDARY).append("\r\n");sb2.append("Content-Disposition: form-data; name=\"json\"\r\n\r\n");sb2.append("{\"id\": \"123456\",\"mc\": \"测试名称\"}");con.connect();OutputStream outputStream = con.getOutputStream();outputStream.write(sb2.toString().getBytes());byte[] endData = ("\r\n--" + BOUNDARY + "--\r\n").getBytes();outputStream.write(endData);outputStream.flush();outputStream.close();//输⼊流读取⽂件in = con.getInputStream();//转化为byte数组byte[] data = getByteData(in);//建⽴存储的⽬录、保存的⽂件名File file = new File(newUrl+ DateUtil.formatDate(new Date()));if (!file.exists()) {file.mkdirs();}//修改⽂件名⽤id重命名File res = new File(file + File.separator + fileName);//写⼊输出流out = new FileOutputStream(res);out.write(data);// ("下载 successfully!");System.out.println("下载 successfully!");} catch (IOException e) {// logger.error("下载出错!"+e.toString());System.out.println("下载出错!"+e.toString());} finally {//关闭流try {if (null != out){out.close();}if (null != in){in.close();}} catch (IOException e) {// logger.error("下载出错!"+e.toString());System.out.println("下载出错!"+e.toString());}}}/**** @Title: getByteData* @Description: 从输⼊流中获取字节数组* @author zml* @date Sep 12, 2017 7:38:57 PM*/private static byte[] getByteData(InputStream in) throws IOException { byte[] b = new byte[1024];ByteArrayOutputStream bos = new ByteArrayOutputStream();int len = 0;while ((len = in.read(b)) != -1) {bos.write(b, 0, len);}if(null!=bos){bos.close();}return bos.toByteArray();}}。
java post方法
java post方法Java中的POST方法可以通过以下步骤实现:1. 创建URL对象,指定POST方法的网址。
javaURL url = new URL("2. 创建URLConnection对象,并将请求方法设置为POST。
javaURLConnection connection = url.openConnection(); connection.setRequestMethod("POST");3. 添加请求头信息,包括请求类型和数据格式等。
javaconnection.setRequestProperty("Content-Type", "application/json");4. 添加请求体信息,也就是需要传递的参数。
javaconnection.setDoOutput(true); OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream()); out.write(jsonRequestBody);out.flush();out.close();其中,jsonRequestBody可以是一个JSON格式的字符串。
5. 发送请求并获取响应。
javaint responseCode = connection.getResponseCode(); BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream())); String response = in.readLine();in.close();6. 处理响应信息,例如将JSON格式的字符串转换为Java对象。
javaGson gson = new Gson();MyResponseObject responseObj = gson.fromJson(response, MyResponseObject.class);其中,MyResponseObject是一个Java类,在实现时需要根据实际需求定义其属性。
hutool中的post请求 -回复
hutool中的post请求-回复Hutool是一个Java工具库,提供了丰富的工具方法,方便开发者进行各种操作。
其中包含了一系列的网络操作工具,其中就包括了post请求的方法。
在本篇文章中,我将一步一步回答关于Hutool中的post请求方法的问题,帮助读者了解如何使用该方法进行网络请求。
首先,让我们了解一下post请求的基本概念。
在网络通信中,post 请求是一种向服务器提交数据的方式。
通常,在post请求中,我们可以通过表单或者参数的方式将数据传递给服务器,以实现特定的功能。
相比于get请求,post请求对数据长度没有限制,数据更为安全,且适用于需要修改服务器数据的场景。
接下来,我们将介绍如何使用Hutool中的post请求方法。
首先,我们需要创建一个HttpUtil对象,这个对象将提供我们进行网络请求的各种功能。
在创建HttpUtil对象的时候,我们可以通过构造函数传入一些默认的参数,例如请求的编码格式、连接超时时间等。
如果不传入这些参数,那么将使用默认的设置。
javaHttpUtil httpUtil = new HttpUtil();创建了HttpUtil对象之后,我们可以使用其中的`post`方法进行post 请求。
这个方法的参数包括了请求的URL、请求的参数等。
在使用这个方法之前,我们需要确保能够正常访问到目标服务器的URL。
javaString result = httpUtil.post(url, paramMap);`post`方法返回的是一个字符串类型的结果,表示服务器返回的数据。
在这个方法中,我们需要传入一个`Map`对象,该对象包含了需要传递给服务器的参数。
根据具体的需求,我们可以通过`put`方法向`Map`对象中添加不同的参数。
javaMap<String, Object> paramMap = new HashMap<>();paramMap.put("username", "hutool");paramMap.put("password", "123456");在执行完`post`请求之后,我们可以通过对返回结果进行处理,根据具体的需求来获取所需要的数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
java实现Post JSON请求具体代码如下:
package com.sunkey.httpTest;
import java.io.DataOutputStream;
import java.io.InputStream;
import .URL;
import .URLConnection;
import mons.io.IOUtils;
public class HttpPostJson {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String URL = "http://localhost:18090";
String Json = findXmlInfo();
Json = "{\"姓名\" : \"大憨\",\"年龄\" : 24}";
String postResult = doHttpPost(Json,URL);
System.out.println("postResult:"+postResult);
}
private static String findXmlInfo() {
// TODO Auto-generated method stub
return null;
}
public static String doHttpPost(String xmlInfo,String URL){ System.out.println("发起的数据:"+xmlInfo);
byte[] xmlData = xmlInfo.getBytes(); InputStream instr = null;
java.io.ByteArrayOutputStream out = null;
try{
URL url = new URL(URL);
URLConnection urlCon = url.openConnection();
urlCon.setDoOutput(true);
urlCon.setDoInput(true);
urlCon.setUseCaches(false);
urlCon.setRequestProperty("Content-Type", "text/xml");
urlCon.setRequestProperty("Content-length",String.valueOf(xmlData.length));
System.out.println(String.valueOf(xmlData.length));
DataOutputStream printout = new DataOutputStream(urlCon.getOutputStream());
printout.write(xmlData);
printout.flush();
printout.close();
instr = urlCon.getInputStream();
byte[] bis = IOUtils.toByteArray(instr);
String ResponseString = new String(bis, "UTF-8");
if ((ResponseString == null) || ("".equals(ResponseString.trim()))) {
System.out.println("返回空");
}
System.out.println("返回数据为:" + ResponseString);
return ResponseString;
}catch(Exception e){
e.printStackTrace();
return "0";
}
finally {
try {
out.close();
instr.close();
}catch (Exception ex) {
return "0";
}
}
}
}。