UserBean userBean = new UserBean();
userBean.setId(new Integer(1));
userBean.setGender(Gender.Man);
userBean.setCreateDate(new Date());
SerializeWriter out = new SerializeWriter();
SerializeConfig sc = new SerializeConfig();
sc.put(Gender.class, new EnumSerializer() {
@Override
public void write(com.alibaba.fastjson.serializer.JSONSerializer arg0, Object arg1, Object arg2, Type arg3) throws IOException {
arg0.write("为何枚举这样转换不成功");
}
});
sc.put(Integer.class, new EnumSerializer() {
@Override
public void write(com.alibaba.fastjson.serializer.JSONSerializer arg0, Object arg1, Object arg2, Type arg3) throws IOException {
arg0.write("Integer_1");
}
});
sc.put(Date.class, new EnumSerializer() {
@Override
public void write(com.alibaba.fastjson.serializer.JSONSerializer arg0, Object arg1, Object arg2, Type arg3) throws IOException {
arg0.write("时间~");
}
});
JSONSerializer serializer = new JSONSerializer(out, sc);
// serializer.config(SerializerFeature.WriteEnumUsingToString,false);
serializer.write(userBean);
System.out.println(out.toString());
理想的结果:{"createDate":"时间~","gender":
"为何枚举这样转换不成功","id":"Integer_1"}
实际的结果:{"createDate":"时间~","gender":
"Man","id":"Integer_1"}
---------------------
个人发现 :
如果是单个枚举或枚举集合、可以转换成功。
如果是对象里面的一个属性是枚举、这样无法转换成功。
---------------------
目的: 想让枚举也用自定义的转换。
弄了一天给跪了~~~
相关推荐
在Java开发中,为了方便地进行JSON与Java对象之间的转换,我们常常会使用到Gson和Fastjson这两个库。 **Gson库** Gson是Google提供的一款开源库,它能够将Java对象转换为JSON字符串,同时也能够将JSON内容反序列...
实现json转换,fastjson json json转换,可以帮助开发中涉及json格式处理的程序猿。
虽然FastJson在性能上表现出色,但在早期版本中曾出现过安全问题。因此,使用时应确保使用最新版本,以避免潜在的安全风险。 总结起来,FastJson作为一个强大的JSON库,因其高效、易用和丰富的特性,被广泛应用于...
通过fastjson实现了JavaBean,list,MAP,list等格式与json格式之间的转换,已经附带fastjson的包,包的版本为fastjson-1.1.36.jar
FastJSON不仅支持将Java对象转换为JSON字符串,还能将JSON字符串反序列化为Java对象,极大地简化了Java与JSON之间的交互。在许多互联网应用中,FastJSON因其高效和简洁的API而被广泛使用。 在提供的代码示例中,...
博主通常会在这样的文章中分享关于如何使用fastJSON进行数据转换、优化性能以及解决常见问题的经验。由于没有实际内容可以引用,我们将基于fastJSON的一般知识来展开讨论。 1. **JSON简介**: JSON(JavaScript ...
为了方便地在Java对象与JSON字符串之间进行转换,阿里巴巴开发并提供了Fastjson库。这个库因其高效、易用的特性,在Java社区中得到了广泛应用。 Fastjson是一个Java语言编写的高性能功能完备的JSON库,它能够快速地...
快速JSON(Fastjson)是阿里巴巴开发的一个高性能的Java JSON库,它能解析JSON格式的数据,并将其转换为Java对象,反之亦然。Fastjson以其高效、轻量级的特点,在Java开发中广泛应用于数据交换和序列化场景。这个...
Fastjson是阿里巴巴开发的一款高性能的Java JSON库,它能够实现JSON到Java对象的相互转换,极大地简化了Java程序处理JSON数据的过程。Fastjson1.2.7是该库的一个版本,包含了源码,使得开发者可以深入理解其内部实现...
而Fastjson,由阿里巴巴公司开发,是一款性能优秀且易用的Java语言编写的JSON库,它能够实现Java对象与JSON数据之间的快速转换。本文将围绕Fastjson的核心特性、使用方法以及优化策略展开详细讲解。 一、Fastjson...
Fastjson能够将Java对象转换为JSON字符串,也能将JSON内容转换为对应的Java对象,使得在处理JSON数据时更加方便快捷。由于其性能优异,被广泛应用于各种Java应用中,包括Web服务、数据分析和移动应用等。 **...
FastJson是阿里巴巴开源的一款高性能的JSON库,它主要用于Java对象与JSON字符串之间的转换。在这个小例子中,我们将深入探讨FastJson的使用方法,以及它如何帮助开发者在Android开发中快速处理JSON数据。 在Android...
通过分析Fastjson源码,开发者可以深入理解其实现原理,如解析算法、类型转换策略等,这对于优化性能、解决特定问题或者扩展Fastjson功能都有很大帮助。在项目中,如果遇到Fastjson无法满足的需求,或者对性能有更高...
Fastjson在安全方面也做了很多工作,包括SQL注入防护、XSS防护等,以防止恶意输入导致的安全问题。然而,开发者仍需关注官方发布的安全更新,及时升级库版本,以保持应用的安全性。 **五、应用场景** Fastjson因其...
对于想要对Fastjson进行扩展或者遇到问题需要追踪源码的人来说,这个文件是不可或缺的资源。 在Fastjson-1.2.9版本中,有一些值得注意的特性: 1. **性能优化**:Fastjson一直以其高性能著称,1.2.9版本中可能包含...
《FastJsonJar:Java开发中的高效JSON处理库》 FastJsonJar,正如其名,是一个专为Java开发者设计的高效JSON解析和生成工具。在现代Web服务和移动应用开发中,JSON作为数据交换格式,其使用频率之高不言而喻。...
同样,FastJSON也支持将Java对象转换为JSON字符串: ```java import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.annotation.JSONField; import com.alibaba.fastjson.serializer.SerializerFeature; ...
3. **自动类型转换**:Fastjson能自动将JSON数据转换为Java对象的相应字段,无需额外的类型转换代码。 4. **流式解析与生成**:除了传统的基于字符串的API,Fastjson还提供了流式API,适用于处理大量数据,降低了...
- **自动类型转换**:Fastjson在解析时会尝试自动转换类型,如将字符串转换为数字、日期等,简化了开发者的操作。 - **自定义转换器**:对于复杂的类型转换需求,Fastjson允许用户自定义`SerializerFeature`和`...
理解并掌握Fastjson的内部工作原理,不仅能帮助我们编写更高效的代码,也能提升我们在Web开发中的问题解决能力。通过深入学习和实践,我们可以进一步挖掘Fastjson的潜力,让JSON操作更加得心应手。