`

Fastjson快速入门

阅读更多

       在使用Ajax方式构建的web2.0应用中,通常需要使用JSON作为数据交换的格式,JSON和XML相比较,更加便于解析,易于学习和使用。酷

 

       最原始的Ajax方式是创建XmlHttpRequest对象,来进行发送请求和接收响应的。但是,创建方式过于复杂,需要考虑到浏览器的兼容性、字符编码等诸多因素。叫喊

       JQuery是一种基于Javascript的前端框架,提供了对Ajax的轻量级封转尴尬,以一种更加友好的方式使用Ajax技术,通常为$.ajax或者$.get/$.post方式。

       EasyUI和Extjs则是Javascript的重量级封装库。这两者都提供了非常优秀的前端UI组件,例如日历组件calendar,表格组件datagrid,树状空间tree等;这些重量级的UI框架,提供了对Ajax更加良好的支持,很多情况下只需要提供ajax请求的url以及用于响应的data即可,开发者不再需要因为处理Ajax请求与响应的技术细节而抓耳挠腮了!大笑

 

       在传统的Java web开发中,我们通常使用out对象将生成的JSON文本写出到客户端,在前端使用Javascript对服务器端返回的JSON文本进行解析即可。

       使用过Spring MVC的童鞋,一定会被它的强大并且简单所深深折服。Spring MVC框架会自动地将实体对象、或者实体对象List集合,转换为客户端所需要的JSON文本眨眼,而仅仅需要添加对Jackson.jar的依赖即可。

       如果使用其他的框架技术如struts,或者使用servlet作为控制器的话,需要开发者手动的实现实体、实体集合到JSON文本的转换功能。幸运的是,我们可以使用开源的JSON处理包来帮助我们完成此项功能。如果使用json-lib-2.2.2-jdk15.jar的话,需要添加很多依赖包:哭

       ezmorph.jar
       commons-logging.jar
       commons-lang.jar
       commons-beanutils.jar
       commons-collections.jar

       比较繁琐,当然如果使用Maven作为项目构建工具,这自然不是问题。

 

 

       我们还有更多选择的余地,Alibaba的温少实现了一个JSON处理jar,并且已经作为开源项目:fastjson-1.1.33.jar [可下载附件]。大笑fastjson的优点是:开放源码、没有多余的依赖jar、强大并且性能显著。

       [1]. 转为Java类型为JSON文本: 

        @ 大多数情况下,只需要一行代码即可大笑,提供的参数可以是Java对象、对象的List集合,或者Map类型、Map的List集合等:String jsonStr = JSON.toJSONString(arg)

        @ 如果存在Date类型的字段:如下代码是一种更加简单的处理方式:
             String jsonStr = JSON.toJSONStringWithDateFormat(user, "yyyy-MM-dd");


        @ 为了便于观察转换后的JSON结果,大笑我们可以使用重载的方法,设置prettyFormat参数为true即可:
             String jsonStr = JSON.toJSONString(user,true);

 

       ---------------------OUTPUT------------------------


        [
                 {
                          "stuId":1,
                          "stuName":"James"
                 },
                 {
                          "stuId":2,
                          "stuName":"Bill"
                 }
        ]

       [2]. JSON文本转为Java对象:

               Userinfo user = JSON.parseObject(jsonStr,Userinfo.class);

我们可以将客户端传入的JSON文本,反序列化为Java实体。

       [3]. 使用JSONObject对象:

       @ 在进行某项操作,比如删除时,我们需要反馈给客户端一个包含多个字段的对象:大笑

                JSONObject result = new JSONObject();

                result.put("success", true);
                result.put("msg", "删除成功!");

        @ 输出时,转换为JSON文本: 

                调用result.toString()的转换结果等同于传统的result.toJSONString()方法。

 

分享到:
评论

相关推荐

    fastjson的一个小例子

    在这个小例子中,我们将深入探讨FastJson的使用方法,以及它如何帮助开发者在Android开发中快速处理JSON数据。 在Android应用开发中,JSON是一种常见的数据交换格式,用于在服务器和客户端之间传递数据。FastJson以...

    fastJSON v2.1.23.zip

    2. **README.md**:这是项目的基本说明,通常包含快速入门指南、安装步骤、许可证信息和已知问题等。 3. **UnitTests.nunit**:这个文件表示FastJSON库的单元测试套件,使用NUnit框架编写,用于验证代码的正确性和...

    fastjson jar 使用详解 实例

    1. **快速入门** 在使用Fastjson之前,你需要将`fastjson-1.1.33.jar`文件添加到项目的类路径中。可以手动复制到项目lib目录,或者通过Maven或Gradle等构建工具进行依赖管理。 2. **JSON字符串与Java对象的转换** ...

    fastjson使用案例源码

    1. **快速入门** - **序列化**:将Java对象转换为JSON字符串,例如`String jsonString = JSON.toJSONString(obj);` - **反序列化**:将JSON字符串解析为Java对象,如`YourClass obj = JSON.parseObject(jsonString...

    FastJsonJar-1.2.2.zip

    该文件很可能是Fastjson的使用指南或常见问题解答,通常会包含如何快速入门、常见API用法、注意事项等内容。对于初次使用Fastjson的开发者来说,这是一个很好的学习起点。 总结起来,FastjsonJar-1.2.2.zip提供了...

    JSON-LIB快速入门

    在本快速入门中,我们将探讨JSON-LIB的基本使用方法和核心概念。 1. JSON-LIB安装 首先,你需要将JSON-LIB库引入到你的项目中。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>...

    dubbo快速入门

    【Dubbo快速入门】 Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心功能:服务注册与发现、远程调用、负载均衡。本篇将带你一步步走进Dubbo的世界,理解其核心概念,并通过一个简单的示例来快速...

    00、SpringBoot入门.rar

    SpringBoot入门是一个针对初学者的教程,旨在帮助开发者快速掌握SpringBoot的核心概念和使用方法。SpringBoot是由Pivotal团队开发的一个框架,它简化了基于Spring的应用程序开发过程,通过预配置各种组件,使得...

    JSON+AJAX,JSON,AJAX,JAVA ,教程,手册,入门,文档,json.pdf

    这些文档通常会涵盖基础概念、语法特性、使用示例、常见问题及解决方案等内容,帮助初学者快速入门并逐步提升技能。例如,`json.pdf`可能包含了JSON的结构介绍、数据类型、编码规则、解析和生成的方法,以及在AJAX和...

    GSON入门篇(教学视频+源代码)

    GSON入门篇 一、创建一个JavaSE项目 二、IDEA中导入gson的jar包 三、创建JavaBean 四、测试类 4.1 一个对象转JSON 4.2 多个对象转JSON 4.3 JSON字符串转一个对象 4.4 JSON字符串转多个对象(List) 4.4.1 错误案例 ...

    dubbo+zookeeper入门实例

    【描述】"dubbo+zookeeper快速入门程序"旨在帮助开发者快速理解这两个组件如何协同工作。Dubbo通过Zookeeper实现服务提供者与消费者之间的通信,提供高可用和可扩展的服务。这个实例通常包括两个部分:服务提供者...

    Dubbo入门之HelloWorld

    总之,"Dubbo入门之HelloWorld"是一个很好的起点,通过实践这个简单的示例,我们可以快速理解Dubbo的工作原理,并为进一步深入学习和掌握Dubbo的高级特性和最佳实践打下坚实的基础。在实际开发中,结合源码阅读和...

    第二课:快速掌握Dubbo常规应用1

    本教程将引导你快速入门Dubbo,通过实例演示如何实现远程调用。 ### 一、Dubbo核心功能 Dubbo的核心功能是提供远程调用能力,使得服务消费者能够透明地调用远程服务,仿佛调用本地方法一般。其关键特性包括: 1. ...

    dubbo入门案例

    通过监控中心,我们可以实时查看服务的运行状态,对问题进行快速定位。同时,日志记录也是排查问题的重要手段,确保在开发和运维过程中能获取足够的信息。 总结来说,"edu-service-user"案例是一个典型的Dubbo应用...

    代码生成器必备jar包:Freemarker-2.3.23

    2. `README.txt`:通常包含关于软件的基本信息、安装指南和快速入门等内容。 3. `LICENSE.txt`:列出软件的许可协议,规定了使用、修改和分发软件的法律条款。 4. `NOTICE.txt`:可能会包含对第三方库的版权信息和...

    mango:高性能,开源Java RPC框架

    芒果 ...快速入门的最低要求是: JDK 1.7或更高 基于Java的项目管理软件,例如或 快速开始 1.同步通话 将依赖项添加到pom。 <groupId>com.mindflow</groupId> <artifactId>mango-core <vers

    springBoot使用文档(201710)V1.0.docx

    总结,SpringBoot 是一个强大的框架,它简化了Spring应用的开发流程,提供了快速构建高质量应用的能力。通过自动配置、内置服务器和运行时监控等特性,SpringBoot 成为了互联网行业中构建微服务和企业级应用的首选...

    Filter&Listener&Ajax.pdf

    在1.2 Filter快速入门中,我们看到了如何开发一个简单的过滤器,包括定义实现Filter接口的类,使用@WebFilter注解配置拦截路径,以及在doFilter方法中处理请求和响应。 Listener(监听器)则是另一种核心组件,它...

    java8源码-x-http-wrapper:http请求、请求参数、响应实体和响应体状态码的自动创建工具

    快速使用入门 从xhwt文件夹下,获取其中的一个包装器的模板文件夹的所有文件,例如:xhwt/asynchttp/non_version文件夹的所有文件; 获取api_data.json文件,并修改x-http-wrapper.json中api_data.file_path_infos的...

Global site tag (gtag.js) - Google Analytics