本人只是一个刚入坑时间不长的菜鸟,这也是自己的第一次开博客,写博客,每个人都有很多的第一次,但是我希望能像标题一样“It is great start”。
刚开始写,而且自己又是新手,很多技术对我来说都是很新鲜的,写这些东西只是希望自己以后能有个留念吧,我会把自己学习,写代码过程中遇到的一些好玩的知识点,好用的API,框架方面自己的理解写进去,比较随性,本意并不是要误导人,有什么不对的也希望看官们指正。(当然如果有看官的情况下)。
第一篇想写一下阿里的fastjson,说点题外话,阿里之前在我的心目中就是一个商业公司,靠中国千千万败家娘们养着的公司,但是从16年7月入行到现在,我越来越觉得阿里是家科技公司,很多服务端的技术都是走在前列的,没少给我们中国软件开发行业争面子。
闲话少说,阿里的fastjson
Fastjson是一个Java语言编写的JSON处理器,由阿里巴巴公司开发。
1、遵循http://www.jb51.cc/tag/http://json.org标准,为其官方网站收录的参考实现之一。
2、功能qiang打,支持JDK的各种类型,包括基本的JavaBean、Collection、Map、Date、Enum、泛型。
3、无依赖,不需要例外额外的jar,能够直接跑在JDK上。
4、开源,使用Apache License 2.0协议开源。http://code.alibabatech.com/wiki/display/FastJSON/Home
5、具有超高的性能,java世界里没有其他的json库能够和fastjson可相比了。
import com.alibaba.fastjson.*
这里主要介绍一下我在开发过程中用到的FastJSON中的重要的API;
System.out.println(JSON.toJSONString(result));
其实这是个小技巧,如果一个封装的bean中没有重写toString(),你又想输出看一下这个bean的属性,使用上述api可以避免输出堆栈地址的尴尬。
String returnStr= RestClient.getInstance().postJsonRequest(urlgi,userVo);
//RestClient是一个发送请求的工具类
Response<userVo> res=JSON.parSEObject(returnStr,new TypeReference<Response<userVo>>(){});
RestClient这是一个发送请求的工具类,returnStr是返回的JSON串,JSON.parSEObjec将返回的returnStr转换成指定的类型,而这个TypeReference()是要确保转换类型的正确,不加这个方法去装换,他不认识我们自定义的类型。
JSON.parse(str,clazz);
JSON.parseArray(str,clazz);
//这里还有转换成数组和转换对应的对象的api