Tag: json

如何将数据列表转换为json

我想要以下json,其中List 将包含form_id , form_name列表,如何使用jsonobject转换它,我没有得到正确的json输出。 请帮我解决一下这个。 JSON: { “forms”: [ { “form_id”: “1”, “form_name”: “test1” }, { “form_id”: “2”, “form_name”: “test2” } ] } 上面是我需要它的json结构列表。其中id,name是来自表单对象的列表 public static JSONObject getJsonFromMyFormObject(List form) { JSONObject responseDetailsJson = new JSONObject(); JSONArray jsonArray = null; System.out.println(form.size()); for (int i = 0; i < form.size(); i++) { JSONObject formDetailsJson = new JSONObject(); […]

如何使用jackson序列化声明性链接(泽西)

我在我的项目中使用声明性链接。 我的jackson映射器配置是 final ObjectMapper mapper = new ObjectMapper(); mapper.configure(MapperFeature.DEFAULT_VIEW_INCLUSION, false); mapper.configure(MapperFeature.AUTO_DETECT_FIELDS, false); mapper.configure(MapperFeature.AUTO_DETECT_IS_GETTERS, false); mapper.configure(MapperFeature.AUTO_DETECT_GETTERS, false); mapper.configure(MapperFeature.AUTO_DETECT_SETTERS, false); mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); mapper.configure(SerializationFeature.INDENT_OUTPUT, true); 因为我已禁用任何类型的自动检测,注入的链接就像 @InjectLinks({ @InjectLink(rel = “bookmark”, resource = ConnectionsResource.class, style = Style.ABSOLUTE_PATH) }) @JsonProperty(“links”) Link[] links; 被序列化为一个空的JSON对象(因为“Link”中的所有字段都没有用@JsonProperty注释)。 如何在不更改全局映射器配置的情况下为字段rel和href启用链接的序列化?

在尝试将大型json数据发送到android中的服务器时出现OutOfMemoryException?

我试图一次发送多个Json字符串[每个1 MB]到PHP Server。 当我试图发送10条记录时,其工作正常。 但如果超过20条记录则会显示OutOfMemoryException 。 我看到android内存大小限制为t0 15MB – 16MB。 但是没有任何线索如何解决这个问题,我使用下面的代码一次发送多条记录。 /** Upload Data*/ private void submitUploadData(String url, Map param) throws IOException { URL siteUrl; try { siteUrl = new URL(url); HttpURLConnection conn = (HttpURLConnection) siteUrl .openConnection(); conn.setRequestMethod(“POST”); conn.setDoOutput(true); conn.setDoInput(true); DataOutputStream out = new DataOutputStream(conn.getOutputStream()); String content1 = “”; Set getkey = param.keySet(); Iterator keyIter […]

从LinkedHashMap中检索值

我有一个看起来像这样的对象: { /test1: { get: { tags: [ “restcalls” ] } }, /test2: { put: { tags: [ “restcalls” ] } } } 我正在检索上面这样的对象: HashMap json = new ObjectMapper().readValue(str, HashMap.class); 但是,检索tags并用其他关键字替换它们的最佳方法是”my rest calls” 。 请注意,get,put也可以是任何其他变量名,所以它的动态但标签总是在get,put下。

查询DB并以Json格式返回结果的通用Java方法

我正在寻找的东西看起来很顺利,但我的谷歌失败了。 我想要一个允许我运行任何查询并以json格式获取结果的方法。 诀窍是我不希望结果需要java对象作为进程的一部分(DTO,VO等)。 这样做的任何快速/简单/干净的方式?

从Java中的Json字符串中提取字段

我试图从以下Json字符串中提取每个company_id中的id String test = [“{\”company_id\”:4100,\”data\”:{\”drm_user_id\”:572901936637129135,\”direct_status_id\”:0,\”direct_optin_date\”:0,\”direct_first_optin_date\”:0,\”direct_last_optin_date\”:0,\”direct_optout_date\”:0,\”direct_last_form_date\”:0,\”direct_last_form_id\”:0,\”direct_last_promo_id\”:0,\”anon_status_id\”:600,\”anon_optin_date\”:1446132360498,\”anon_first_optin_date\”:1446132360498,\”anon_last_optin_date\”:1446132360498,\”anon_optout_date\”:0,\”anon_last_form_date\”:1446132360498,\”anon_last_form_id\”:101,\”anon_last_promo_id\”:1002003,\”last_registration_date\”:1446132360498,\”mp_status_id\”:600,\”mp_control_state\”:-1,\”mp_match_date\”:0,\”mp_vs_version\”:0,\”mp_initial_value_segment\”:0,\”mp_id\”:0,\”conversion_last_form_date\”:0,\”conversion_last_form_id\”:0,\”conversion_last_promo_id\”:-1,\”last_message_date\”:1446132368928,\”cg_version\”:0,\”cg_version_date\”:0,\”num_anon_messages_global\”:0,\”num_anon_messages_global_date\”:0,\”reg_creator_id\”:576,\”reg_form_id\”:101,\”reg_method_id\”:1,\”reg_creator_type_id\”:1},\”personal_data\”:{\”version\”:0,\”personal_data\”:\”{}\”,\”mdc_data\”:{\”version\”:0},\”custom_data\”:\”{}\”},\”category_data\”:{},\”campaignImpressions\”:{},\”journeyStartDate\”:0}”,”{\”company_id\”:4045,\”data\”:{\”drm_user_id\”:572901936637129135,\”direct_status_id\”:0,\”direct_optin_date\”:0,\”direct_first_optin_date\”:0,\”direct_last_optin_date\”:0,\”direct_optout_date\”:0,\”direct_last_form_date\”:0,\”direct_last_form_id\”:0,\”direct_last_promo_id\”:0,\”anon_status_id\”:600,\”anon_optin_date\”:1446132360498,\”anon_first_optin_date\”:1446132360498,\”anon_last_optin_date\”:1446132360498,\”anon_optout_date\”:0,\”anon_last_form_date\”:1446132360498,\”anon_last_form_id\”:101,\”anon_last_promo_id\”:1002003,\”last_registration_date\”:1446132360498,\”mp_status_id\”:600,\”mp_control_state\”:-1,\”mp_match_date\”:0,\”mp_vs_version\”:0,\”mp_initial_value_segment\”:0,\”mp_id\”:0,\”conversion_last_form_date\”:0,\”conversion_last_form_id\”:0,\”conversion_last_promo_id\”:-1,\”last_message_date\”:1446132368928,\”cg_version\”:0,\”cg_version_date\”:0,\”num_anon_messages_global\”:0,\”num_anon_messages_global_date\”:0,\”reg_creator_id\”:576,\”reg_form_id\”:101,\”reg_method_id\”:1,\”reg_creator_type_id\”:1},\”personal_data\”:{\”version\”:0,\”personal_data\”:\”{}\”,\”mdc_data\”:{\”version\”:0},\”custom_data\”:\”{}\”},\”category_data\”:{},\”campaignImpressions\”:{},\”journeyStartDate\”:0}”,”{\”company_id\”:2979,\”data\”:{\”drm_user_id\”:572901936637129135,\”direct_status_id\”:0,\”direct_optin_date\”:0,\”direct_first_optin_date\”:0,\”direct_last_optin_date\”:0,\”direct_optout_date\”:0,\”direct_last_form_date\”:0,\”direct_last_form_id\”:0,\”direct_last_promo_id\”:0,\”anon_status_id\”:600,\”anon_optin_date\”:1446132360498,\”anon_first_optin_date\”:1446132360498,\”anon_last_optin_date\”:1446132360498,\”anon_optout_date\”:0,\”anon_last_form_date\”:1446132360498,\”anon_last_form_id\”:101,\”anon_last_promo_id\”:1002003,\”last_registration_date\”:1446132360498,\”mp_status_id\”:600,\”mp_control_state\”:-1,\”mp_match_date\”:0,\”mp_vs_version\”:0,\”mp_initial_value_segment\”:0,\”mp_id\”:0,\”conversion_last_form_date\”:0,\”conversion_last_form_id\”:0,\”conversion_last_promo_id\”:-1,\”last_message_date\”:1446132368928,\”cg_version\”:0,\”cg_version_date\”:0,\”num_anon_messages_global\”:0,\”num_anon_messages_global_date\”:0,\”reg_creator_id\”:576,\”reg_form_id\”:101,\”reg_method_id\”:1,\”reg_creator_type_id\”:1},\”personal_data\”:{\”version\”:0,\”personal_data\”:\”{}\”,\”mdc_data\”:{\”version\”:0},\”custom_data\”:\”{}\”},\”category_data\”:{},\”campaignImpressions\”:{},\”journeyStartDate\”:0}”] 我很想和Json一起工作。 这是我到目前为止: JSONObject jsonObject = new JSONObject(test); JSONObject newJSON = jsonObject.getJSONObject(“company_id”); System.out.println(newJSON.toString()); jsonObject = new JSONObject(newJSON.toString()); 我被困在这里因为我老实说不知道如何提取company_id。 感谢您的时间和耐心。

序列化已经有了id的POJO(java.lang.String)

我有两个实体,我使用spring framework 4.2.5 + jacksonjson 2.7.5将其序列化并发送给客户端。 我的实体如下: @Entity @Table(name = “entrada”) @JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class, property=”idEntrada”) public class EntradaTest implements Serializable { private static final long serialVersionUID = 1L; @Id @Column(name = “id_entrada”, unique = true, nullable = false) private String idEntrada; @Column(nullable = false, length = 5) private String codigo; private Integer recibidos; @ManyToOne @JsonIdentityReference(alwaysAsId = true) […]

JodaTime LocalDate / LocalTime不使用自定义JSON Serializer类进行解析

我有一个名为ReportEvent的对象,它接受来自JodaTime API /框架的JodaTime和LocalDate 。 此ReportEvent可以通过谷歌的GSON转换API写入JSON 。 但是,当反序列化JodaTime partial导致问题时。 Logcat错误报告: 10-16 13:23:01.812: E/AndroidRuntime(8884): FATAL EXCEPTION: main 10-16 13:23:01.812: E/AndroidRuntime(8884): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.nanospark.cnc/com.nanospark.cnc.MainActivity}: java.lang.IllegalArgumentException: Invalid format: “{“iChronology”:{“iBase”:{“iMinDa…” 10-16 13:23:01.812: E/AndroidRuntime(8884): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211) 10-16 13:23:01.812: E/AndroidRuntime(8884): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261) 10-16 13:23:01.812: E/AndroidRuntime(8884): at android.app.ActivityThread.access$600(ActivityThread.java:141) 10-16 13:23:01.812: E/AndroidRuntime(8884): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256) 10-16 13:23:01.812: E/AndroidRuntime(8884): at android.os.Handler.dispatchMessage(Handler.java:99) 10-16 13:23:01.812: […]

如何比较JSON文档并返回与Jackson或Gson的差异?

我正在使用spring-boot来开发后端服务。 有一种方案可以比较2-beans(一个是DB对象,另一个是客户端请求的对象)并返回“new element”,“modified element”,如果没有更改,则返回false。 2豆的格式如下 “sampleList”:{ “timeStamp”:”Thu, 21 Jun 2018 07:57:00 +0000″, “id”:”5b19441ac9e77c000189b991″, “sampleListTypeId”:”type001″, “friendlyName”:”sample”, “contacts”:[ { “id”:”5b05329cc9e77c000189b950″, “priorityOrder”:1, “name”:”sample1″, “relation”:”Friend”, “sampleInfo”:{ “countryCode”:”91″, “numberType”:”MOBILE”, “numberRegion”:”IN” } }, { “id”:”5b05329cc9e77c000189b950″, “priorityOrder”:1, “name”:”sample2″, “relation”:”Friend”, “sampleInfo”:{ “countryCode”:”91″, “numberType”:”MOBILE”, “numberRegion”:”IN” } } ] } 我在java中浏览了关于这种情况的bean比较的网络,但我找不到任何更简单的解决方案,但找到了一些很酷的JSON解决方案。 我可以看到GSON的一些解决方案,但它不会返回客户端对象包含“新元素”和“更改元素”。 有没有办法在JSON或JAVA中返回更新和修改过的元素? 你的帮助应该是值得的。 即使是暗示对我来说也是一个很好的开始。

将点分隔的字符串转换为JSON对象

所以我有一个点分隔的字符串,我试图在JAVA中转换为JSON对象。 结构如下。 Person.City.FirstNm.LastNm=xyz, Person.City.Address=abc. Person.City.firstNm.Salary=1000.24, Person.State.FirstNm.LastNm=xyz 等等。 生成的JSON应该是这样的。 请注意,值中可以有小数点。 { Person: { City: { firstNm: { LastNm:xyz, Salary:1000.24 }, Address: abc }, State: { FirstNm: { LastNm:xyz } } } } 我试图从字符串中创建一个Map,然后使用它来创建一个JSON字符串,我可以使用它作为一个对象,但没有运气。 任何帮助,将不胜感激。 谢谢