Java 如何让json更快?
这行代码执行大约需要2秒Java 如何让json更快?,java,json,jackson,Java,Json,Jackson,这行代码执行大约需要2秒 ObjectMapper mapper = new ObjectMapper(); 因为在计算方面,两秒钟是一辈子的时间,有没有办法让jackson的反应更快 我正在使用: <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId>
ObjectMapper mapper = new ObjectMapper();
因为在计算方面,两秒钟是一辈子的时间,有没有办法让jackson的反应更快
我正在使用:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
org.codehaus.jackson
杰克逊地图绘制者
1.9.13
<杰克逊>正在使用的版本是旧版本,请考虑升级到杰克逊2。可能需要付出一些努力(取决于您使用的API),但任何新功能和性能增强都可能仅限于2.x。有关更多信息和升级说明,请参阅
对于ObjectMapper
,下面是这样说的:
:对象映射器缓存序列化器和反序列化器,这些序列化器和反序列化器是在给定类型第一次需要处理程序时创建的(或者更准确地说,映射器持有对提供程序对象的引用)。如果不重用映射器,则每次都需要创建新的序列化器和反序列化器:由于涉及大量的内省和注释处理,这些操作代价高昂
您运行的平台是什么,可能是移动平台?在我3岁以上的笔记本电脑上创建一个实例不到半秒钟
如果性能是一个问题,你的JSON也不太复杂,请考虑使用杰克逊的流API(杰克逊的真实能力)来解析JSON数据,这将是一个数量级的更快。
你不能让它更快。但是考虑升级到杰克逊2.使用单实例,FASTXML和CODEHAUS之间有什么区别吗?他们两个都有杰克森,有很多不同之处。您可以阅读变更日志。您最好的解决方案是按照@RC的建议执行。@SotiriosDelimanolis is 1.9.13平台的最后一个版本是笔记本电脑corei7 8gb ram。json有点复杂,有好几层继承和抽象involved@dave我很难相信新的ObjectMapper()
在这样一台功能强大的机器上需要2秒钟,我的只是一台Core 2 Duo,大约需要400毫秒。你能再测量一次吗?