私はJavaのリソースフォルダと春のブートアプリケーションを持っている:読むファイル
src
|
main
|
resources
|
test
|
test1.json
test2.json
...
リソースフォルダでJSONファイルがあります。 IDE(IntelliJ)内でこれらのファイルを読むことができます。しかし、コンパイルされたJARファイルとして、私はNullpointer
例外を取得します。
スプリングブートは、ファイルを次の場所にコピーします。BOOT-INF/classes/test
JARファイル内のリソースファイルを読み取ることはできますか?私はファイル名を知らない。だから最初に、私はすべてのファイル名を取得し、各ファイルを読む必要があります。
アイデアはありますか?
私はこれを試してみました
UPDATE:それと
Resources[] resources = applicationContext.getResources("classpath*:**/test/*.json");
私はすべてのファイルパスを取得しています。しかし、それはあまりにも多くの時間を必要とする。私がファイル名を取得しても、ファイルをどのように読むことができますか?
しようとしたことがありますか? – Barath
これらがテストファイルの場合、src/main/resourcesではなく、src/test/resourcesに属していると思います。もしそうでなければ、それらをsrc/main/resourcesの下に置き、より分かりやすい名前を付けます。 classpath:test/test1.jsonおよびclasspath:test/test2.jsonからリソースをロードします。 – duffymo
@duffymo私はそれをちょうど質問をここに掲示するためにちょうどそのように付けました。実際には、ファイルには他の名前が付いています。そして私が言ったように、私はそれらを直接呼び出すファイルの名前を知らない。私はフォルダ名を知っているだけです。 – CPA