创建一个将采用jsonPath和类型的验证,检查jsonpath和类型的数据类型是否相同

时间:2019-06-06 09:42:25

标签: java json

我正在读取一个文件,因为Json数据可用。 我需要创建一个方法,该方法需要jsonobject,jsonpath,type 我需要检查jsonpath的数据类型,键入...如果数据类型相同,则应返回true,否则返回false ...

示例:store.book [0] .title ....这是jsonpath,它将以字符串形式返回标题值 因此,如果我们以字符串形式给出的类型...应该返回true。.

Json Data : 
{
    "store": {
        "book": [
            {
                "category": "reference",
                "author": "Nigel Rees",
                "title": "Sayings of the Century",
                "price": 8.95
            },

    },
    "expensive": 10
}

这是用于读取Json文件并获取输出的Java代码。 示例:store.book [0] .title ....这是jsonpath,它将以字符串形式返回title值, 因此,如果我们以字符串形式给出的类型...应该返回true。.

public class Validation {

    public void readJSON() throws Exception {
        File file = new File("myJSONFile.txt");
        String content = FileUtils.readFileToString(file, "utf-8");

        // Convert JSON string to JSONObject
        JSONObject tomJsonObject = new JSONObject(content);
        System.out.println(tomJsonObject);
        System.out.println(tomJsonObject.getString("age"));
        //validateByType(tomJsonObject, "age", null);
    }

public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("Test");
        Validation v = new Validation();
        try {
            v.readJSON();

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

1 个答案:

答案 0 :(得分:0)

为什么不使用JSON创建对象?这样就可以检查是否为空!您可以通过参考JSON中可用的字段来创建Object类,并为对象类中的字段生成getter和setter方法来实现。因此,您可以全局使用对象。对象创建示例here以及在this问题中。