当前位置: 首页 > 知识库问答 >
问题:

Java语言lang.UnsupportedOperationException:在bean类中不能有循环引用,但得到了类java的循环引用。时间区域偏移

翟淮晨
2023-03-14

执行以下命令时

StructType obs=编码器。bean(测试类)。schema()

我正在

<代码>java。lang.UnsupportedOperationException:在bean类中不能有循环引用,但得到了类java的循环引用。时间区域偏移

类测试具有偏移日期时间字段,这导致了上述错误。如果我删除这个字段,错误也会消失。有没有办法避免这种循环引用错误,同时使用OffsetDateTime?


共有1个答案

司寇祺
2023-03-14

根据编码器文档,bean字段支持的类型是:

java bean字段支持的类型:-基本类型:boolean、int、double等。-装箱类型:boolean、Integer、double等。-字符串-java。数学BigDecimal,java。数学BigInteger-与时间相关:java。sql。日期,java。sql。时间戳,java。时间LocalDate,java。时间即时收集类型:数组、java。util。列表和映射嵌套的java bean。

所以就我所知,似乎不可能使用OffsetDateTime<代码>区域偏移是偏移日期时间字段的一部分,因此调用编码器。bean可能正在生成循环引用ZoneOffset的代码。

 类似资料:
  • 我想将包含Avro对象(例如MyAvroclass的对象)的javaRDD转换为java spark中的数据帧。我发现了以下错误 代码:

  • 问题内容: 在正在进行的项目中,人们编写了服务类来访问DAO。几乎每个业务对象都具有使用自己的DAO的自己的服务。在某些服务上,我们使用对其他服务的引用。目前,人们正在实例化构造函数内部所需的服务。 但是现在,我遇到了麻烦,因为服务A需要服务B而服务B需要服务A,因此对任一构造函数的调用都会导致堆栈溢出… 示例(伪代码): 您将如何解决?使用单例模式? 谢谢 问题答案: Spring框架通过使用依

  • 我有三个实体,EntityA、EntityB和EntityC,以这样的方式 是否有任何方法或任何库来生成正确的响应bean? 注意:使用lazy不是一个选项,因为在其他一些方法中,我希望获得相关的实体。

  • 问题内容: 给定一个以复杂的,循环的方式相互引用的类实例的集合:垃圾收集器是否可能无法释放这些对象? 我隐约记得过去这是JVM中的问题,但我 认为 这在几年前已解决。但是,在jhat中进行的一些调查显示,循环引用是我现在面临的内存泄漏的原因。 注意:我一直给人以JVM能够解析循环引用并从内存中释放这种“垃圾岛”的印象。 但是,我提出这个问题只是为了看看是否有人发现了任何异常。 问题答案: 循环引用

  • 我有圆形参考的问题。 我有Rest Webservices,它会将对象返回到前端,问题是当我试图返回具有多个引用的对象时,结果会得到无限的响应,从而生成 这些对象是由Hibernate代码生成自动生成的,我需要在后端有循环引用,我只需要在使用Jackson将信息发送到前端之前删除它。 控制器方法标头为: 我没有做任何明确的事情来转换为杰克逊,我是一个新手,我认为杰克逊自动解决了这个问题。

  • 使用MySQL、Java、Spring Boot和JPA 我有两个对象,用户和模块。 一个用户可以有多个模块,一个模块可以有多个用户。 模块的结构如下: 用户的结构如下: 在调用模块时,使用@JsonIgnore注释确实“起作用”,但理想情况下,我还需要调用用户及其模块。有什么建议可以支持这两种方法,而不会因循环引用而崩溃?