读取http端json格式文件

1.servlet输出json格式数据:

a.map实现单层json文件

package JsonManager;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONObject;

public class JsonServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");
response.setCharacterEncoding("UTF-8"); //解决中文乱码问题

PrintWriter out = response.getWriter();

Map map1 = new HashMap();

map1.put("name", "san、zhang");
map1.put("age", new Integer(22));
map1.put("Provinces", new String("山东省"));
map1.put("citiy", new String("济南市"));
map1.put("Master", new String("C、C++、Linux、Java"));

Map map2 = new HashMap();

map2.put("name", "san、zhang");
map2.put("age", new Integer(22));
map2.put("Provinces", new String("山东省"));
map2.put("citiy", new String("济南市"));
map2.put("Master", new String("C、C++、Linux、Java"));
JSONObject json1 = JSONObject.fromObject(map1);
JSONObject json2 = JSONObject.fromObject(map2);

out.write(json1.toString());
out.write(json2.toString());
//out.write(map.toString());
out.flush();
out.close();}

b.直接输出

注意双引号改为单引号或者用转义

String arg0= "{‘dataset’:[{‘label’:[‘58.213.14.210’],"+
"‘data’:[{‘time’:’2016-08-01 12:00:00+08’,‘value’:[‘240651744.00’]}," +
"{‘time’:’2016-08-01 12:05:00+08’,‘value’:[‘230709888.00’]},"+
"{‘time’:’2016-08-01 12:10:00+08’, ‘value’:[‘231472528.00’]}," +
"{‘time’:’2016-08-01 12:15:00+08’,‘value’:[‘225603200.00’]},"+
"{‘time’:’2016-08-01 12:20:00+08’,‘value’:[‘222865600.00’]},"+
"{‘time’:’2016-08-01 12:25:00+08’,‘value’:[‘227648016.00’]},"+
"{‘time’:’2016-08-01 12:30:00+08’,‘value’:[‘229146144.00’]},"+
"{‘time’:’2016-08-01 12:35:00+08’,‘value’:[‘229744544.00’]},"+
"{‘time’:’2016-08-01 12:40:00+08’,‘value’:[‘228680000.00’]},"+
"{‘time’:’2016-08-01 12:45:00+08’,‘value’:[‘235564544.00’]},"+
"{‘time’:’2016-08-01 12:50:00+08’,‘value’:[‘225956016.00’]},"+
"{‘time’:’2016-08-01 12:55:00+08’,‘value’:[‘223865600.00’]},"+
"{‘time’:’2016-08-01 13:00:00+08’,‘value’:[‘219243472.00’]}]},"+
"{‘label’:[‘58.213.111.114’],"+
"‘data’:[ {‘time’:’2016-08-01 12:00:00+08’,‘value’:[‘85914136.00’]},"+
"{‘time’:’2016-08-01 12:05:00+08’,‘value’:[‘104741072.00’]},"+
"{‘time’:’2016-08-01 12:10:00+08’,‘value’:[‘93126136.00’]},"+
"{‘time’:’2016-08-01 12:15:00+08’,‘value’:[‘70651200.00’]},"+
"{‘time’:’2016-08-01 12:20:00+08’,‘value’:[‘77301336.00’]},"+
"{‘time’:’2016-08-01 12:25:00+08’,‘value’:[‘87298136.00’]},"+
"{‘time’:’2016-08-01 12:30:00+08’,‘value’:[‘109632000.00’]},"+
"{‘time’:’2016-08-01 12:35:00+08’,‘value’:[‘119785600.00’]},"+
"{‘time’:’2016-08-01 12:40:00+08’,‘value’:[‘87119736.00’]},"+
"{‘time’:’2016-08-01 12:45:00+08’,‘value’:[‘128524264.00’]},"+
"{‘time’:’2016-08-01 12:50:00+08’,‘value’:[‘104490936.00’]},"+
"{‘time’:’2016-08-01 12:55:00+08’,‘value’:[‘88409072.00’]},"+
"{‘time’:’2016-08-01 13:00:00+08’,‘value’:[‘80157072.00’]}]}]}}";
out.write(arg0);

2.java端接入http

package JsonManager;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

import sun.net.www.protocol.http.HttpURLConnection;
/**
* 接收服务端Json数据
*/
public class GetJsonInterfaceInfo{
/**
* @param args
* @throws IOException
*/

public void loadJSON (String start_time,String end_time) {
String urlPath="http://localhost:8080/JSONInterface/servlet/jsonServlet"+
"?request={'report_request':{'resource_type':'filter','report_type':'topn','resource_id':"+
"'1397','counter_index':'1','granularity':'5min','report_datetime':"+
"{'start_time':"+start_time+",'end_time':"+end_time+"},'topn_index':'3792'}}"
;

StringBuilder json = new StringBuilder();
try {
URL url = new URL(urlPath);
URLConnection con = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(
con.getInputStream()));
String inputLine = null;
while ( (inputLine = in.readLine()) != null) {
json.append(inputLine);
}
in.close();
} catch (MalformedURLException e) {
} catch (IOException e) {
}
System.out.println("原始数据:");
System.out.println(json.toString());
}

public static void main(String[] args) {
String start_time ="";
String end_time ="";
if(args.length >=1 && args[0] !=null){
start_time = args[0];
}
if(args.length >=2 && args[1] !=null){
start_time = args[1];
}
GetJsonInterfaceInfo GI=new GetJsonInterfaceInfo();
GI.loadJSON(start_time,end_time);
}}

 

posted @ 2016-08-12 08:47  vicky0601  阅读(1994)  评论(0编辑  收藏  举报