`
chembo
  • 浏览: 941046 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

hibernate多对一关系中,JSON serializing对象时报JsonMappingException

阅读更多
我在spinrg mvc中用json返回一个pojo,此pojo与另一个pojo存在多对一关系,这时就会报以下exception:
to use the MappingJacksonJsonView to return one of these objects I receive the following exception:
Org.codehaus.jackson.map.JsonMappingException: No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: java.util.HashMap["prospect"]->com.softrek.dms.domain.Prospect["addresses"]->org.hibernate.collection.PersistentSet[0]->com.softrek.dms.domain.Address["prospect"]->com.softrek.dms.domain.Prospect_$$_javassist_1["hibernateLazyInitializer"])
at org.codehaus.jackson.map.ser.StdSerializerProvider$1.serialize(StdSerializerProvider.java:55)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:218)
at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:122)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:218)
at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:122)


这个错其实很易明了,因为你序列化对象A时,需要把里面的多对一关系的B拿出来,而B里面又有A的集合,如此反复,便报这样的错了,解决这个问题的方法在于在 多对一关系中的的一方的set 集体的get 方法前面添加@JsonIgnore即可,如:
@JsonIgnore public Set getStuedntses() {
		return studentses;
	}

添加这个注解后,无论你是lazy="true" or lazy="false"他都不会去序列化你的了!
分享到:
评论

相关推荐

    IOS开发 json实例

    JSON是一种轻量级的数据格式,以键值对的形式存储数据,支持数组和对象。例如: ```json { "name": "John", "age": 30, "city": "New York" } ``` 在iOS开发中,Foundation框架提供了NSJSONSerialization类来...

    OC 下TouchJson解析和封装成Json

    在iOS开发中,数据交换和存储常常涉及到JSON(JavaScript Object Notation)格式,因为它轻量级、易读写且被广泛支持。Objective-C(OC)作为苹果平台的主要编程语言之一,虽然原生支持NSJSONSerialization类进行...

    6.Json与Protocolbuf相互转换1

    描述中提到的“serializing to JSON string from Message”是指将ProtoBuf消息对象转换为JSON字符串,而“parsing from JSON string to Message”则是指从JSON字符串反序列化回ProtoBuf消息对象。在示例代码中,可以...

    深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!

    在JavaScript编程中,经常听到关于“JSON对象”的讨论,但实际上,JSON并不是JavaScript中的一个对象类型。这个概念常常被误解,因为JSON(JavaScript Object Notation)的语法与JavaScript对象字面量相似,但它们...

    可以在QT4中使用的JSON库

    QT4 JSON The **qt-json** project is a simple collection of functions for parsing and serializing [JSON][js] data to and from [QVariant][var] hierarchies.

    IOS应用源码——JSon.zip

    在iOS开发中,JSON(JavaScript Object Notation)是一种常见的数据交换格式,被广泛用于应用程序与服务器之间的通信。这个"IOS应用源码——JSon.zip"压缩包很可能包含了一个使用Swift或Objective-C编写的iOS应用,...

    java源码:JSON类库 Flexjson.zip

    这个压缩包“java源码:JSON类库 Flexjson.zip”包含的是Flexjson库的版本2.1,它是对Java开发人员非常有用的一个工具,特别是在处理数据交换或存储时。下面将详细探讨Flexjson库的主要特性和使用方法。 Flexjson的...

    json序列化jar包

    Flexjson is a lightweight library for serializing and deserializing Java objects into and from JSON. What's different about Flexjson is it's control over what gets serialized allowing both deep and ...

    jsoncpp-0.6.0-rc2_修改版

    修改后的版本修复了这个缺陷,现在可以正确处理包含Unicode转义序列的JSON字符串,从而确保了对多语言和特殊字符的支持。 2. **解决写时中文字符未转义保存的问题**:当C++对象转换为JSON字符串时,如果其中包含...

    Java XML and JSON: Document Processing for Java SE, 2nd Edition

    Java XML and JSON: ...Master the JSON format for serializing and transmitting data Code against third-party APIs such as Jackson, mJson, Gson, JsonPath Master Oracle’s JSON-P API in a Java SE context

    Java 问题和分析 Serializing a primitive with ObjectOutStream

    在上述问题中,需要对一个长整型(long)的原始值进行序列化,并且已经有了以下的代码片段。为了解决这个问题,需要选择正确的序列化方法。 首先,选项 A是不正确的,因为 ObjectOutputStream 能够直接序列化原始...

    7. Django 模型与数据库

    字段类型多种多样,包括基本类型如`CharField`(字符字段)、`IntegerField`(整数字段)和`DateTimeField`(日期时间字段),还有复杂类型如`ManyToManyField`(多对多关系)和`ForeignKey`(一对多关系)。...

    php中高级OOP技术

    在PHP中,面向对象编程(OOP)是高级开发中不可或缺的一部分。OOP技术使得代码更加模块化、可维护和可扩展。以下是对标题和描述中提到的几个关键知识点的详细解释: 1. **序列化(Serializing)**: 序列化是将对象...

    pata_cs5535.rar_If...

    在IT行业中,编程是至关重要的一个领域,而序列化(Serializing)是编程中的一个重要概念,尤其是在处理数据存储和网络传输时。标题“pata_cs5535.rar_If...”暗示了我们可能在讨论一个与编程相关的项目,可能涉及到...

    FlexJson1.7 Jar包

    Flexjson is a lightweight library for serializing Java objects into JSON. FlexJson,一个轻量级的Jar库,可以将Java对象序列化成Json格式

    Serializing Interfaces in SAP AIF.zip

    sap press doc 解压密码:abap_developer

    toml++tomlplusplus-master TOML配置文件C++库

    Supports serializing to JSON and YAML Proper UTF-8 handling (incl. BOM) C++17 (plus some C++20 features where available, e.g. experimental support for char8_t strings) Doesn't require RTTI Works with ...

    Python使用pickle进行序列化和反序列化的示例代码

    在`Serializing`类的`do_serializing`方法中,创建了一个`BeSerializing`对象`obj`,然后使用`pickle.dump()`将其序列化并写入名为`test_pickle.obj`的文件。`with`语句用于确保文件在使用后会被正确关闭。 `...

    Android DevCamp幻灯片分享:发现和建立多设备之间的数据通信 | 豌豆荚实验室 孙桥

    通过使用这样的数据结构,可以有效地表示复杂的对象关系,并在客户端与服务器之间高效地传输数据。 #### 五、序列化与反序列化操作 序列化是指将数据结构转换成字节流的过程,以便于存储或传输;而反序列化则是将...

    django 1.8 官方英文文档

    Django使用了对象关系映射(ORM)来处理数据库操作。 ### Handling HTTP Requests(处理HTTP请求) 这部分内容讲解了如何使用Django的视图来处理Web请求。Django的视图用于处理用户的输入,返回相应的响应。 ### ...

Global site tag (gtag.js) - Google Analytics