0.0.9.0 2019-04-12 calvin 0.0.8.0 2019-04-11 calvin 0.0.7.0 2019-02-28 calvin 0.0.6.0 2019-02-28 calvin 0.0.5.0 2019-02-27 calvin 0.0.1.0 2019-02-23 calvin -------------------------------------------------------------------------- 1. 概述okjson是用JAVA编写的JSON处理器(JSON解析器+JSON生成器)。 它能帮助开发者把一段JSON文本中的数据映射到实体类中,或由一个实体类生成一段JSON文本。 它小巧,源码只有一个类文件和一个注解类文件,方便架构师嵌入到项目/框架中去。 它高效,比号称全世界最快的fastjson还要快。 它灵活,不对映射实体类有各种各样约束要求。 一个好工具就是简单、朴素的。 2. 一个示例来一个简单示例感受一下(所有代码可在源码包 2.1. 编写JSON文件demo.json { "userName" : "Calvin" , "email" : "calvinwilliams@163.com" , "userExtInfo" : { "gender" : "M" , "age" : 30 , "address" : "I won't tell you" } , "interestGroupList" : [ "Programing", "Playing game", "Reading", "Sleeping" ] , "borrowDetailList" : [ { "bookName" : "Thinking in JAVA" , "author" : "Bruce Eckel" , "borrowDate" : "2014-01-02" , "borrowTime" : "17:30:00" } , { "bookName" : "Thinking in C++" , "author" : "Bruce Eckel too" , "borrowDate" : "2014-02-04" , "borrowTime" : "17:35:00" } , { "bookName" : "Thinking in okjson" , "author" : "It's me !!!" , "borrowDate" : "2014-03-06" , "borrowTime" : "17:40:00" } ] } 2.2. 编写实体类DemoUserClass.java package xyz.calvinwilliams.okjson; import java.time.LocalDate; import java.time.LocalTime; import java.util.LinkedList; public class DemoUserClass { String userName ; String email ; UserExtInfo userExtInfo ; LinkedList<String> interestGroupList ; LinkedList<BorrowDetail> borrowDetailList ; } class UserExtInfo { String gender ; int age ; String address ; } class BorrowDetail { String bookName ; String author ; @OkJsonDateTimeFormatter(format="yyyy-MM-dd") LocalDate borrowDate ; @OkJsonDateTimeFormatter(format="HH |