IDEAは、パスプロファイルに静的プロパティを書き込み、ファイルのJavaコードは、読み出し動作と

機能:自動化JSONファイルが読み込まします

要件:JSONファイルを作成し、ファイルは、ファイルに解析されたパスは、設定ファイルに記述する必要がありますされます

  •  Cで:\ドキュメントパスの下に\ Users \ユーザーQX、ファイルt2.jsonを作成します
{"state":"success"}
  • py.propertiesにリソースフォルダ内の以下の書類を作成し、IDEAでのMavenプロジェクトを作成します。
  • JSONファイルを解析する必要があるため、のpom.xmlに以下の依存関係を追加
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>Python_Airflow</groupId>
        <artifactId>Python_Airflow</artifactId>
        <version>1.0-SNAPSHOT</version>
    
        <dependencies>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.4</version>
            </dependency>
        </dependencies>
    
        <properties>
            <maven.compiler.source>1.8</maven.compiler.source>
            <maven.compiler.target>1.8</maven.compiler.target>
        </properties>
    
    </project>

    彼らのニーズに応じて依存アドオン

  • javaディレクトリにPython_Airflowクラスの作成
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    
    import java.io.*;
    import java.io.InputStream;
    import java.util.Iterator;
    import java.util.Properties;
    import java.util.ArrayList;
    import java.util.List;
    
    
    public class Python_Airflow {
        public static String readJsonFile(String fileName) {
            String jsonStr = "";
            try {
                File jsonFile = new File(fileName);
                FileReader fileReader = new FileReader(jsonFile);
                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);
                }
                fileReader.close();
                reader.close();
                jsonStr = sb.toString();
                return jsonStr;
            } catch (IOException e) {
                e.printStackTrace();
                return null;
            }
        }
    
        public static class ReadProperties {
    
            public String getPyValue(String urlName) {
                String p = null;
                Properties prop = new Properties();
                try {
                    ClassLoader classLoader = ReadProperties.class.getClassLoader();// 读取属性文件xxxxx.properties
                    InputStream in = classLoader.getResourceAsStream("py.properties");
                    prop.load(in); /// 加载属性列表
                    Iterator<String> it = prop.stringPropertyNames().iterator();
                    while (it.hasNext()) {
                        if (it.next().equals(urlName)) {
                            p = prop.getProperty(urlName);
                        }
                    }
                    in.close();
                } catch (Exception e) {
                }
                System.out.println(p);
                return p;
            }
        }
    
        public static void main(String[] args)
        {
            String path = new ReadProperties().getPyValue("path");
    
            String s = readJsonFile(path);
            JSONObject jobp = JSONObject.parseObject(s);
            String state = (String) jobp.get("state");
            System.out.println(state);
        }
    }

    成功裏に実行します。

 

公開された111元の記事 ウォン称賛57 ビュー60000 +

おすすめ

転載: blog.csdn.net/qq_38358499/article/details/100709844