1. java 访问一个接口得到接口返回JSON,步骤是怎么做的
写个servlet,将结果转换成ArrayJson对象,打印出这个json就行,前端通过ajax去请求获得json数据。java转json需要用到相应的jar包,网络一下吧。
java中的接口是一种特殊的类,使用关键字interface创建。接口功能完全实现后,可以打成jar包,提供给其他公司使用。
要返回json格式数据,可以把接口中抽象方法的返回值类型规定为JSONObject或JSONString类型。这样当其他公司调用时,得到的数据就是json数据了。
另外,以jar形式提供的接口,可以通过反编译得到你的源码,如果你不希望开源,就要加密了。
访问接口时code返回2怎么回事
一般情况接口有调用说明的睁宽,需要看接口提供方提供的说明。
AFHTTPRequestOperationManager 进行post调用,
manager.requestSerializer = [AFJSONRequestSerializer serializer];请求
manager.responseSerializer = [AFJSONResponseSerializer serializer];响应
入参出参都会序列化;后面发现接口返回的参数结构不固定,可能是map,array,string
我印象中如果不重写pareTo方法那返回值都是-1吧......
我一般都是实现Comparable接口,重写CompareTo方法就可以了。
至于降序升序,可以这样比较:
假如A的值大于B,你返回1。这样调用Collections.sort()方法就是升序
假如A的值大于B,你返回-1。这样调用Collections.sort()方法腊袭就是降序
一般比较的都是对象中一个具体的数值。不知道你的类的构造,不好给例子
struts2中用rest后台返回json的方法是统一封装response为JSONObject即可。举例如下:importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;import.opensymphony.xwork2.Action;publilassTest{publicMapresponseJson;publicMapgetResponseJson(){returnresponseJson;}publicvoidsetResponseJson(MapresponseJson){this.responseJson=responseJson;}publicStringgetList(){Mapmap=newHashMap();List>list=newArrayList>();for(inti=0;im=newHashMap();m.put("id",i);m.put("name","Mic"+i);list.add(m);}map.put("rows",list);map.put("totalCont",3);this.setResponseJson(map);returnAction.SUCCESS;}}
可以的,以GET请求为例
var = require('');
var qs = require('querystring');
var data = {
a: 123,
time: new Date().getTime()};这是需要提交的数据轮早兄
var content = qs.stringify(data);
var options = {
hostname: 飗.0.0.1',
port: 10086,
path: '/pay/pay_callback?' + content,
method: 'GET'
};
var req = .request(options, function (res) {
console.log('STATUS: ' + res.statusCode);
console.log('HEADERS: ' + JSON.stringify(res.headers));
res.setEncoding('utf8');
res.on('data', function (chunk) {
console.log('BODY: ' + chunk);
});
});
req.on('error', function (e) {
console.log('problem with request: ' + e.message);
});
req.end();
1
这种方法有两大步第一步是拼接需要的json数据,第二步是用servlet的内置对象response返回到前台。
2
String 类型的数据可以不用借助任何工具直接返回,只要把它拼接对了就可以。如我需要返回一个{“suess”:true,“msg”:“修改失败!”}的json,就可以如下图这样写。(注意,java里的引号要用的转义字符“”)
3
如果需要返回的是一个list或者别的类的化,需要用到JSONArray的辅助工具类,然后使用response.getWriter().print(),返回到打到前台。具体代码如下图。
END
方法2:用Spring框架
如果你使用了Spring框架那就更简单了,你只需要在你的方法返回的时候加一个@ResponseBody的注解就可以了。就这么简单。
在java中,调用请求接口,主要通过流的方式进行调用,示例接口如下:
/**
* 程序中访问数据接口
*/
public String searchLoginService(String urlStr) {
/** 网络的url地址 */
URL url = null;
/** 连接 */
HttpURLConnection Conn = null;
/**** 输入流 */
BufferedReader in = null;
StringBuffer *** = new StringBuffer(); ...
2. java 怎么取json 字段的数据
JSONObjectj首烂困=历腊newJSONObject();
j.put("id","22");
j.put("name","haha");
j.put("sex","xixi");
System.out.println(j.get("者念id"));
3. java 中怎么取json对象中的数据
如果是简单的json
字符串
,
那么可闹迹尘以使用字符串的截取
来获取
需要的数据
如州腊果是比较复杂的json对象液禅,
那么可以使用第三方的jar,
去解析json
比如
gson
,fastjson
等都是不错的选择~效率也比较高
4. java怎么读取json格式的数据
你好,Java读取json数据格式,你只需要使用JsonStore 等等工具包即可进行便捷的读取了。代码比较敬启简单,通俗易懂,具体JsonStore可以网络一下亮旅如详细信息。镇局
5. 怎样从java后台获取json字符串并转换为json对象输出
使用json-lib.jar这个工具x0dx0apublic String getJson(Object obj){x0dx0a JSONObject json;x0dx0a json = JSONObject.fromObject(obj);x0dx0a return json.toString();x0dx0a}x0dx0a使用jquery来处理jsonx0dx0a//转换为json数据 datas可以用ajax从后台获取上面getJson中的数据x0dx0avar jsonDatas = eval("(" + datas + ")");x0dx0a //循环遍历数据x0dx0ajQuery.each(jsonDatas, function(item) {x0dx0a//循环x0dx0a});
6. java怎么取json数据的值
获取JSON的值。 就是解析JSON数据.
如果是简单的JSON数据, 并且只需要提取少量数据的值, 那么可以使用字符串的操作来实现,比如String.subString()...等
如果是比较复杂的JSON数据,或者需要提取的值比较多, 那么可以使用Gson, FastJSon 等第三方的jar来实现...
简单的Demo示例
第三方包使用的是Gson
importcom.google.gson.JsonElement;
importcom.google.gson.JsonObject;
importcom.google.gson.JsonParser;
publicclassGsonTest{
publicstaticvoidmain(String[]args){
StringstrJson="{"name":"张三","age":12}";
JsonParserparser=newJsonParser();
JsonElementje=parser.parse(strJson);
JsonObjectjobj=je.getAsJsonObject();//从json元素转变成json对象
Stringname=jobj.get("name").getAsString();//从json对象获取指定属性的值
System.out.println(name);
intage=jobj.get("age").getAsInt();
System.out.println(age);
}
}
7. java后台怎样获取前台的json数据
一般是这样的,先缺枝将对象类型(在js中json就是一个对象),使用json.js(有些浏览器支持,有些需要引入)的方法:
JSON.parse(jsonstr); //可伏哪敏以将json字符串缓余转换成json对象
JSON.stringify(jsonobj); //可以将json对象转换成json对符串
的第二个转换成字符串,然后把字符串当作一个参数的值再为其添加一个key然后以key/value的格式将数据传到后台。
之后后台使用request.getParameter();的方式得到json数据。
8. java怎么得到json中的数据
如果不是Android开发环境的话,首先需要引入处理JSON数据的包:json-lib-2.2.3-jdk15.jar
Java样例程序如下:
importnet.sf.json.JSONArray;
importnet.sf.json.JSONObject;
publicclassDoJSON{
publicstaticvoidmain(String[]args){
JSONArrayemployees=newJSONArray(); //JSON数组
JSONObjectemployee=newJSONObject(); //JSON对象
employee.put("firstName","Bill"); //按“键-值”对形式存储数据到JSON对象中
employee.put("lastName","Gates");
employees.add(employee); //将JSON对象加入到JSON数组中
employee.put("firstName","George");
employee.put("lastName","Bush");
employees.add(employee);
employee.put("firstName","Thomas");
employee.put("lastName","Carter");
employees.add(employee);
System.out.println(employees.toString());
for(inti=0;i<employees.size();i++){
JSONObjectemp=employees.getJSONObject(i);
System.out.println(emp.toString());
System.out.println("FirstName: "+emp.get("firstName"));
System.out.println("LastName: "+emp.get("lastName"));
}
}
}
运行效果:
[{"firstName":"Bill","lastName":"Gates"},{"firstName":"George","lastName":"Bush"},{"firstName":"Thomas","lastName":"Carter"}]
{"firstName":"Bill","lastName":"Gates"}
FirstName : Bill
LastName : Gates
{"firstName":"George","lastName":"Bush"}
FirstName : George
LastName : Bush
{"firstName":"Thomas","lastName":"Carter"}
FirstName : Thomas
LastName : Carter
9. java怎么获取json对象中的数据
如果是简单的JSON 字符串 , 那么可以使用棚败并字符串的截取 来获取 需要的数据
如链迹果枯衡是比较复杂的JSON对象, 那么可以使用第三方的jar, 去解析JSON
比如 GSON ,Fastjson 等都是不错的选择~效率也比较高