Tag: json

Spring Boot RestTemplate列表

我收到这样的回复: { “data”:[ { “object1″:”example”, “object2″:”example”, “object3″:”example”, “object4″:”example”, “object5″:”example” }, { “object1″:”example”, “object2″:”example”, “object3″:”example” } ] } 现在我想将这些数据映射到我的类DTO,但是我得到一个“错误”,因为DTO没有data字段。 我希望它在我class级的List或Array中。 喜欢: List list = restTemplate.getForObject(url, MyClass.class); 我希望你知道我的意思吗?

将无效的Json转换为有效的json android?

我想将jnvalid JSON数据转换为有效的JSON数据。 我在下面有这样的JSON。 是否有任何使用Java更改它的逻辑? { name: date, order: 1, required: true, type: date, placeholder: Expense Date } 我想要有效的JSON数据格式如下: { “name”: “date”, “order”: “1”, “required”: “true”, “type”: “date”, “placeholder”: “Expense Date” }

转换json与gson错误预期BEGIN_OBJECT但是BEGIN_ARRAY在第1行第2列路径$

[{“user_id”:”5633795″,”username”:”_Vorago_”,”count300″:”203483″,”count100″:”16021″,”count50″:”1517″,”playcount”:”1634″,”ranked_score”:”179618425″,”total_score”:”1394180836″,”pp_rank”:”34054″,”level”:”59.6052″,”pp_raw”:”1723.43″,”accuracy”:”96.77945709228516″,”count_rank_ss”:”1″,”count_rank_s”:”19″,”count_rank_a”:”17″,”country”:”US”,”events”:[]}] 我正在尝试使用GSON转换上面的JSON,但遇到了错误。 package com.grapefruitcode.osu; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; import com.google.gson.Gson; public class Main { static String ApiKey = “”; public static void main(String[]Args) throws Exception{ String json = readUrl(“”); System.out.println(json); Gson gson = new Gson(); User user = gson.fromJson(json, User.class); System.out.println(); } private static String readUrl(String urlString) throws Exception { BufferedReader reader = […]

从条带webhook事件中检索条带数据

在java中实现条带webhook时,我成功地获取了JSON格式的事件对象。 问题是我无法获得嵌套JSON中的amount,subscription_id,属性等详细信息。 从类对象获取这些值也不可用。 你能告诉我如何提取这些价值观吗? public void handle(HttpServletRequest request) { Stripe.apiKey = sk_test_XXXXXXXXXXXXXXXXXXXX; String rawJson = “”; try { rawJson = IOUtils.toString(request.getInputStream()); } catch (IOException ex) { System.out.println(“Error extracting json value : ” + ex.getMessage()); } Event event = APIResource.GSON.fromJson(rawJson, Event.class); System.out.println(“Webhook event : ” + event); } 我收到以下回复: – Webhook event : JSON: { “id”: […]

jackson – 将java对象转换为json – 需要所有关键键到大写

需要你的帮助将java对象转换为json。 当前json结果显示小写字母的所有键,我需要它是大写。 ObjectMapper mapper = new ObjectMapper(); Writer strWriter = new StringWriter(); mapper.writeValue(strWriter, obj); String jsonString= strWriter.toString(); 结果是 [{“flags”:”1″,”name”:”Peter”,”location”:”London”,”startDate”:”2012-01-06 00:00″}] 但我想要这样的结果(所有关键键值应该是大写的): [{“FLAGS”:”YU”,”NAME”:”Peter”,”LOCATION”:”London”,”STARTDATE”:”2012-01-06 00:00″}] 并且也可以这样(大写的关键第一个字母): [{“Flags”:”1″,”Name”:”Peter”,”Location”:”London”,”StartDate”:”2012-01-06 00:00″}] 谁可以帮我这个事。 提前致谢。

使用GSON将POJO序列化为不同名称的JSON?

我有一个像这样的POJO,我使用GSON序列化为JSON: public class ClientStats { private String clientId; private String clientName; private String clientDescription; // some more fields here // getters and setters } 我是这样做的: ClientStats myPojo = new ClientStats(); Gson gson = new Gson(); gson.toJson(myPojo); 现在我的json将是这样的: {“clientId”:”100″, …… } 现在我的问题是:我有没有办法为clientId自己的名字,而不是更改clientId变量名? 在Gson中是否有任何注释我可以在clientId变量的顶部使用? 我想要这样的东西: {“client_id”:”100″, …… }

使用processbuilder从java执行curl

我正在java中编写测试程序来测试我与django中的restfull api的连接(精确地说是djangorestframework)。 其中一个选择是用curl测试api。 从shell运行curl命令它工作正常:例如: curl –show-error –request GET –header ‘Accept: application/json’ –user “user:pwd” http://127.0.0.1:8000/api/v1/ 这将以json格式很好地返回api根URL和helptext。 现在,当我尝试使用ProcessBuilder从java调用相同的内容时,我得到了这样的答案: {“detail”: “You do not have permission to access this resource. You may need to login or otherwise authenticate the request.”} 我使用的java代码是: ProcessBuilder p=new ProcessBuilder(“curl”,”–show-error”, “–request”,”GET”, “–header”,”‘Accept: application/json'”, “–user”,”\”” + userName + “:” + password + “\””, getApiRootUrlString()); final Process […]

以正确的顺序从Web服务中迭代Json数据

我有来自Web服务的响应,数据是JSON格式。 JSONObject event:- { “15:00”:{“type”:1,”status”:null,”appointment_id”:null}, “16:00”:{“type”:1,”status”:null,”appointment_id”:null}, “17:00”:{“type”:1,”status”:null,”appointment_id”:null}, “18:00”:{“type”:1,”status”:”1″,”appointment_id”:5} } 我不知道关键值,它们是随机的。 因此,当我使用迭代器通过获取keys和hasNext()来迭代数据时。 它返回数据但改变了即将到来的数据的顺序。 Iterator AppoinmentIter = event.keys(); while(AppoinmentIter.hasNext()){ String appointmentTime = (String)AppoinmentIter.next(); JSONObject appointmentDetails = event.getJSONObject(appointmentTime); } 我想要数据的确切顺序。 我查了这个链接 ,建议使用LinkedHashMap 。 但是在这里他们通过键插入值。 我不知道我的数据中的密钥。 那么我怎么能以正确的顺序迭代数据。 请帮忙..

用gson反序列化json字符串

我的java servlet以这种方式返回一个json字符串: Gson gson = new Gson(); String lista = gson.toJson(utenti); System.out.println(lista); request.setAttribute(“lista”, lista); request.getRequestDispatcher(“GestioneUtenti.jsp”).forward(request, response); 现在,在jsp页面中我想再次使用我的arrayList。 我试着这样做: <% String lista = (String)request.getAttribute("lista"); Gson gson = new Gson(); ArrayList users = gson.fromJson(lista, TypeToken.get(new ArrayList().getClass()).getType()); out.println(users.get(0).getUsername()); %> 我有这个例外: java.lang.ClassCastException: com.google.gson.internal.StringMap cannot be cast to classi.Utente 能帮你吗? 如果我想念一些细节告诉我! 谢谢 :-)

Spring MVC Json解析限制的最佳解决方法

我有一个使用Spring,Hibernate的项目,并且有一个返回JSON的控制器。 当然,我的模型包含使用JPA注释来定义hibernate关系的列表等,因此,例如,我有Users,它们包含一组他们拥有的挑战,同样Challenge包含拥有它的用户。 不幸的是,我似乎在我的JSON中嵌入了很多集合问题。 例如,通过该设置(用户拥有挑战并且挑战拥有所有者),我可以很好地返回挑战。 我可以回复用户就好了。 但是,当我尝试返回一系列挑战时,一切都会爆炸! 我从Jmeter测试中收到以下错误: 错误500服务器错误 我相信这意味着Jackson json解析器在设置json时遇到了问题。 我相信这一点,因为如果我使用@JsonIgnoreProperties({“challengeOwned”}),那么我可以很好地返回挑战列表,因为每个单独的挑战对象不再嵌入其中的列表。 这对我来说似乎很奇怪。 jackson真的不能在JSON中映射简单的嵌入式列表吗? 我也有一个很大的问题,因为我有一个使用User作为其键的Map …而且似乎甚至不可能将JSON map的键定义为嵌入对象! 有没有人对我的问题有任何建议? 我是否必须手动定义一些Json映射? 有一个我不知道的简单解决方案吗? 编辑: 虽然j0ntech所说的确如此,但事实certificate并非整个故事。 似乎当Spring使用Jackson将我的一个hibernate实体序列化为它的JSON版本时,hibernate试图延迟加载该实体的一个属性,但由于该实体在该点处处于其事务之外(在“控制器中”) ),它引起了一个例外,它被吞没了。 实际上有两个问题。 我想通过尝试手动使用Jackson来序列化我实际返回之前返回的对象来解决这个问题。 这样我实际上得到了另一个问题的堆栈跟踪。