我使用杰克逊将Java POJO转换为JSON字符串。我面临的问题是随着请求数量的增加,处理转换的时间开始增加。例如,对于100tps,处理所用的时间为10ms,但在2000tps时,所花费的时间为90ms。我怎样才能避免它?有没有办法让它独立于tps。杰克逊将对象转换为json字符串
回答
请提供您使用的代码,否则很难对其进行优化。
还有其他序列化选项和JSON框架可用。如果你想保留JSON,寻找其他框架,如“json-smart”:http://code.google.com/p/json-smart/ 他们声称比Jackson快2-3倍。
我使用的代码如下ObjectMapper mapper = new ObjectMapper(); \t \t String json = null; \t \t AnnotationIntrospector primary = new JaxbAnnotationIntrospector(mapper.getTypeFactory()); \t \t AnnotationIntrospector secondary = new JacksonAnnotationIntrospector(); \t \t AnnotationIntrospector pair = new AnnotationIntrospectorPair(primary,secondary); \t \t mapper.setAnnotationIntrospector(pair); \t \t \t尝试{ \t \t \t \t JSON = mapper.writeValueAsString(OBJ); \t \t \t \t \t \t \t \t \t}赶上(例外五){ \t \t \t \t返回 “无法转换为JSON对象:” + obj.toString()+ “的消息:” + e.getMessage() ; \t \t \t \t \t \t \t} – Abhi
您应该能够回收对象映射,这可能会提高性能。 – Thomas
如何重新映射对象映射器? – Abhi
- 1. 将对象转换为JSON字符串与杰克逊
- 2. 杰克逊从json字符串转换为Java对象结果默认对象
- 3. 将JSON转换为多个对象。使用杰克逊
- 4. 杰克逊杰克逊不为嵌套对象创建json
- 5. 杰克逊json到对象
- 6. 使用杰克逊反序列化JSON字符串或对象转换为字符串字段
- 7. Json字符串到Java对象映射失败与杰克逊
- 8. 杰克逊不会将JSON字符串序列化为Java对象
- 9. 转换JSON许多对象,以单JSON使用杰克逊
- 10. 将字符串转换为JSON对象
- 11. 将字符串转换为json对象
- 12. 将JSON对象转换为字符串
- 13. 将json对象转换为字符串
- 14. 将字符串转换为JSON对象
- 15. 将json字符串转换为对象
- 16. 转换JSON对象的列表使用杰克逊
- 17. 杰克逊:转换JSON包含对象类地图
- 18. 使用杰克逊对象映射器将JSON数组转换为POJO
- 19. 杰克逊 - 如何将复杂的JSON转换为地图对象?
- 20. 杰克逊JSON解析地图转换
- 21. 杰克逊自定义映射器将字节数组转换为字符串
- 22. 转换JSON字符串到漂亮的打印JSON输出使用杰克逊
- 23. 如何将球衣/杰克逊列表转换为字符串作为回应
- 24. 杰克逊JSON不裹嵌套对象
- 25. 杰克逊微型json到对象类
- 26. JSON到JAVA对象由杰克逊
- 27. 杰克逊解析json嵌套对象是一个JSON Stringify字符串
- 28. 杰克逊反序列化的变量作为JSON字符串
- 29. 为什么杰克逊串行数字字段为字符串?
- 30. - 杰克逊地图<字符串,对象>实施
如果它可能缓存你的结果json –
我无法缓存它。这将是一个新的每一个 – Abhi