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

Quarkus-Microprofile REST客户端:添加一个自定义的、未映射的字段

阎弘
2023-03-14
public class Country {

    public String name;
    public String alpha2Code;
    public String capital;
    public List<Currency> currencies;

    public static class Currency {
        public String code;
        public String name;
        public String symbol;
    }
}
 public class Country {
    
        public String name;
        public String alpha2Code;
        public String capital;
        public List<Currency> currencies;
        public Instant timestamp;  //<--------- added attribute
       [....]

谢谢你的帮助

西蒙娜

共有1个答案

杜骏祥
2023-03-14

您实际上可以在默认构造函数中这样做。像JSONB或Jackson这样的框架希望POJOs有一个默认的构造函数。他们将在创建country实例时调用它。

使用@jsonbtransient@jsonignore注释将POJO的该属性标记为可忽略,以避免解封程序抱怨在响应中找不到的属性。

 @Data
 public class Country {
    
        private String name;
        private String alpha2Code;
        private String capital;
        private List<Currency> currencies;
        @JsonbTransient // if you're using JSONB (default in Quarkus)
        @JsonIgnore // if you're using Jackson
        private Instant timestamp;

        public Country() {
            this.timestamp = Instant.now();
        }

您应该考虑使用@data注释。封装不是一件坏事,但是创建getter/setters是乏味的。但龙目岛项目在这方面肯定有所帮助。

 类似资料:
  • 我想为无法识别的字段和其他带有请求正文的错误设置自定义错误消息。我试过ExceptionMapper,但它不起作用:/使用Quarkus和杰克逊 发送请求时: 看起来不错。但发送时: 找到类似DeserializationProblemHandler的内容,但不知道如何更改handleUnknownProperty:/的消息

  • 问题内容: 我正在与socket.io聊天应用程序,我想用我的自定义客户端ID,而不是默认的(,)。连接时是否有任何发送自定义标识符的方式,或仅使用某种方式来跟踪每个ID的自定义名称?谢谢! 问题答案: 您可以在服务器上创建一个数组,并在其上存储自定义对象。例如,您可以存储Socket.io创建的ID和每个客户端发送到服务器的自定义ID: 在此示例中,您需要从每个客户端调用 storeClient

  • 我正在尝试将添加到 Devise,但是当我注册一个新用户时,当我推送提交时它会中断。 我已确保运行< code>rake db:migrate并重新启动了我的服务器,但我得到了以下错误: ActiveRecord::StatementInvalid in Devise::RegistrationsController#create NoMethodError: nil:NilClass 的未定义方

  • 以下是我的Spring应用程序的相关部分: 上面的方法从未被调用。我需要成为一个Spring bean,因为我需要向它注入其他依赖项。 以下是文件的相关部分:

  • 我注意到Rest客户端上有两个指南:MicroProfile和Vertx。既然微文件支持异步,那么使用基于Vertx的Rest客户端有什么好处?

  • 我正在用spring MVC开发一个REST webservice。我需要更改jackson 2序列化mongodb对象的方式。我不知道该怎么做,因为我找到了Jackson2的部分文档,我所做的是创建一个自定义序列化程序: