java中怎样读取json文件(Java读取本地JSON)

 2025-02-25  阅读 510  评论 0

摘要:在开发Elasticsearch的应用过程中,需要读取索引相关的JSON Settings、Mappings设置,将json文档存放到项目的resources 目录,然后读取并调用Elasticsearch API 执行。POM依赖com.alibaba

在开发Elasticsearch的应用过程中,需要读取索引相关的JSON Settings、Mappings设置,将json文档存放到项目的resources 目录,然后读取并调用Elasticsearch API 执行。

java中怎样读取json文件(Java读取本地JSON)(1)

POM依赖

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.56</version>

</dependency>

读取JSON工具类

package com.fanxb.esdemo.util;

import java.io.*;

public class JsonUtil {

/**

* 读取json文件,返回json串

* @param fileName

* @return

*/

public static String readJsonFile(String fileName) {

String jsonStr = "";

try {

File jsonFile = new File(fileName);

reader reader = new InputStreamReader(new FileInputStream(jsonFile),"utf-8");

int ch = 0;

StringBuffer sb = new StringBuffer();

while ((ch = reader.read()) != -1) {

sb.append((char) ch);

}

reader.close();

jsonStr = sb.toString();

return jsonStr;

} catch (IOException e) {

e.printStackTrace();

return null;

}

}

}

编写单元测试

getResource(""):这个方法可以用于查看当前目录。

this.getClass().getResource("")和this.getClass().getClassloader().getResource("") 区别?

第一个是类路径下(即 class 根目录);

第二个目录是 class目录里面当前类的包路径(package);

参考下图,推荐写法:

this.getClass().getClassLoader().getResource("文件名.文件类型")

java中怎样读取json文件(Java读取本地JSON)(2)

单元测试方法,具体代码如下。

@Test

public void readJsonFile(){

String path = this.getClass().getClassLoader().getResource("order_template.json").getPath();

String jsonFile = JsonUtil.readJsonFile(path);

System.out.println(jsonFile);

}

order_template.json文件放入resources资源目录中,如下是输出结果。

java中怎样读取json文件(Java读取本地JSON)(3)

,

版权声明:xxxxxxxxx;

原文链接:http://cn.tdroid.net/ce7dbCz0HAwAEUlU.html

发表评论:

管理员

  • 内容265746
  • 积分0
  • 金币0
关于我们
lecms主程序为免费提供使用,使用者不得将本系统应用于任何形式的非法用途,由此产生的一切法律风险,需由使用者自行承担,与本站和开发者无关。一旦使用lecms,表示您即承认您已阅读、理解并同意受此条款的约束,并遵守所有相应法律和法规。
联系方式
电话:
地址:广东省中山市
Email:
注册登录
注册帐号
登录帐号

Copyright © 2022 太卓开发网 Inc. 保留所有权利。 泰达科技网易库网

页面耗时0.0971秒, 内存占用1.33 MB, 访问数据库18次