Extract a List of values for keys with the same prefix using @JsonPropperty











up vote
1
down vote

favorite












For this JSON:



{"key.a": "a", "key.b": "b"}


I want to load values "a" and "b" to List using @JsonProperty and Jackson. I tried:



@JsonProperty("key.*")
List<String> values;


But it doesn't work. Any thoughts?










share|improve this question







New contributor




user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
























    up vote
    1
    down vote

    favorite












    For this JSON:



    {"key.a": "a", "key.b": "b"}


    I want to load values "a" and "b" to List using @JsonProperty and Jackson. I tried:



    @JsonProperty("key.*")
    List<String> values;


    But it doesn't work. Any thoughts?










    share|improve this question







    New contributor




    user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      For this JSON:



      {"key.a": "a", "key.b": "b"}


      I want to load values "a" and "b" to List using @JsonProperty and Jackson. I tried:



      @JsonProperty("key.*")
      List<String> values;


      But it doesn't work. Any thoughts?










      share|improve this question







      New contributor




      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      For this JSON:



      {"key.a": "a", "key.b": "b"}


      I want to load values "a" and "b" to List using @JsonProperty and Jackson. I tried:



      @JsonProperty("key.*")
      List<String> values;


      But it doesn't work. Any thoughts?







      java json spring jackson






      share|improve this question







      New contributor




      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked Nov 8 at 10:08









      user3751481

      82




      82




      New contributor




      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      user3751481 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote



          accepted










          You can use the JsonAnySetter annotation, which will map any unknown Json property, on a setter method:



          private List<String> values = new ArrayList<>();

          @JsonAnySetter
          public void setValues(String key, String value) {
          // You can perform a pattern validation on the key if wanted
          this.values.add(value);
          }

          public List<String> getValues() {
          return this.values;
          }


          An alternative solution would be to implement a custom JsonSerializer & JsonDeSerializer as well.






          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });






            user3751481 is a new contributor. Be nice, and check out our Code of Conduct.










             

            draft saved


            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53205487%2fextract-a-list-of-values-for-keys-with-the-same-prefix-using-jsonpropperty%23new-answer', 'question_page');
            }
            );

            Post as a guest
































            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            0
            down vote



            accepted










            You can use the JsonAnySetter annotation, which will map any unknown Json property, on a setter method:



            private List<String> values = new ArrayList<>();

            @JsonAnySetter
            public void setValues(String key, String value) {
            // You can perform a pattern validation on the key if wanted
            this.values.add(value);
            }

            public List<String> getValues() {
            return this.values;
            }


            An alternative solution would be to implement a custom JsonSerializer & JsonDeSerializer as well.






            share|improve this answer



























              up vote
              0
              down vote



              accepted










              You can use the JsonAnySetter annotation, which will map any unknown Json property, on a setter method:



              private List<String> values = new ArrayList<>();

              @JsonAnySetter
              public void setValues(String key, String value) {
              // You can perform a pattern validation on the key if wanted
              this.values.add(value);
              }

              public List<String> getValues() {
              return this.values;
              }


              An alternative solution would be to implement a custom JsonSerializer & JsonDeSerializer as well.






              share|improve this answer

























                up vote
                0
                down vote



                accepted







                up vote
                0
                down vote



                accepted






                You can use the JsonAnySetter annotation, which will map any unknown Json property, on a setter method:



                private List<String> values = new ArrayList<>();

                @JsonAnySetter
                public void setValues(String key, String value) {
                // You can perform a pattern validation on the key if wanted
                this.values.add(value);
                }

                public List<String> getValues() {
                return this.values;
                }


                An alternative solution would be to implement a custom JsonSerializer & JsonDeSerializer as well.






                share|improve this answer














                You can use the JsonAnySetter annotation, which will map any unknown Json property, on a setter method:



                private List<String> values = new ArrayList<>();

                @JsonAnySetter
                public void setValues(String key, String value) {
                // You can perform a pattern validation on the key if wanted
                this.values.add(value);
                }

                public List<String> getValues() {
                return this.values;
                }


                An alternative solution would be to implement a custom JsonSerializer & JsonDeSerializer as well.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 8 at 10:30

























                answered Nov 8 at 10:20









                tmarwen

                8,38232441




                8,38232441






















                    user3751481 is a new contributor. Be nice, and check out our Code of Conduct.










                     

                    draft saved


                    draft discarded


















                    user3751481 is a new contributor. Be nice, and check out our Code of Conduct.













                    user3751481 is a new contributor. Be nice, and check out our Code of Conduct.












                    user3751481 is a new contributor. Be nice, and check out our Code of Conduct.















                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53205487%2fextract-a-list-of-values-for-keys-with-the-same-prefix-using-jsonpropperty%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest




















































































                    Popular posts from this blog

                    Landwehr

                    Reims

                    Schenkenzell