title: Dynamic change of JsonProperty name using Jackson java library
body: <p>I use <code>Jackson 2.9.8</code> for converting my below <code>POJO</code> as <code>JSON</code>:</p>
  
  <pre><code>public class ResponseEntity implements Serializable {
  
      private static final long serialVersionUID = 1L;
      private int total_record_count;
      private int filtered_record_count;
      @JsonProperty("list")
      private List&lt;Map&lt;String,Object&gt;&gt; entityList;
  
      public ResponseEntity(List&lt;Map&lt;String,Object&gt;&gt; entityList)  {
          this.entityList = entityList;
          this.filtered_record_count = entityList.size();
      }
  
      public int getTotal_record_count() {
          return total_record_count;
      }
      public void setTotal_record_count(int total_record_count) {
          this.total_record_count = total_record_count;
      }
      public int getFiltered_record_count() {
          return filtered_record_count;
      }
      public void setFiltered_record_count(int filtered_record_count) {
          this.filtered_record_count = filtered_record_count;
      }
      public List&lt;Map&lt;String, Object&gt;&gt; getEntityList() {
          return entityList;
      }
      public void setEntityList(List&lt;Map&lt;String, Object&gt;&gt; entityList) {
          this.entityList = entityList;
      }
  }
  </code></pre>
  
  <p>In the result <code>JSON</code>, value of <strong><em>entityList</em></strong> member is mapped to <strong><em>list</em></strong> key as it's annotated with <code>@JsonProperty("list")</code>:</p>
  
  <pre><code>{
     "list" : [ {
       "id" : "IID000000002129959",
       "attr1" : "MY",
       "attr2" : "sd",
       "attr3" : true   }]
  }
  </code></pre>
  
  <p>But I need to customise it with different names. For some response it should be <code>busines1</code>, <code>business2</code>, etc.</p>
  
  <p>How do I make <code>JsonProperty</code> name dynamic?</p>