将JSON映射到spring controller

时间:2016-12-25 01:00:21

标签: java json spring

我有一个基本的java对象:

public class Condition {

    int id;
    int fieldImplId;
    String property;
    String message;
    boolean applyIfEvaluatesTo;
    boolean newValue;
    List<Expression> expressions;  
}

现在我的Expression对象包含嵌套表达式的n-List。将所有这些保存到数据库是一个痛苦的屁股。那么有一种方法(注释?)我可以有一个类,其中表达式memeber是一个JSON(字符串),我可以作为字符串保存到数据库。 (所有的逻辑都是用javascript完成的,所以我没有必要对它进行javatize。)

身体看起来像这样:

 "conditions": 
  {
    "id": 4,
    "fieldId": 0,
    "property": "isVisible",
    "message": null,
    "applyIfEvaluatesTo": false,
    "newValue": true,
    "expression": {
      "operator": "OR",
      "args": [
        {
          "operator": "AND",
          "args": [
            {
              "fieldId": "zip",
              "operator": "IS_VALID",
              "operands": []
            }
          ]
        }
      ]
    }
  }

关键在于我根本不在乎什么价值&#34;表达&#34;有(它可以有n个args。我只想把它保存到DB。我真的需要能够像这样干净地映射:

    @RequestMapping(value = "", method = RequestMethod.POST)
    public void createCondition(@RequestBody Condition condition) {

有没有办法说,&#34;这个元素是一个字符串&#34;

在一天结束时,对象看起来像这样:

public class Condition {
    int id;
    int fieldImplId;
    String property;
    String message;
    boolean applyIfEvaluatesTo;
    boolean newValue;
    String expressions;  
}

0 个答案:

没有答案