程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java讀取WEB應用中的資源

Java讀取WEB應用中的資源

編輯:關於JAVA

問題:前幾天,碰到了需要從web應用讀取文件內容的問題。一般的,配置文件都放在工程src目錄下,那樣讀起來也很方便,對於大多數人都是這種習慣。但這次偏偏就放在WebContent目錄下的子目錄裡,雖然郁悶,問題還是要解決的。因此在此聊記一筆。

解決方法:XXX.class.getResourceAsStream(Path)獲取流對象,要明白部署後目錄的變化

實例:

  1. import Java.io.IOException;
  2. import Java.io.InputStream;
  3. import Javax.servlet.ServletContextEvent;
  4. import Javax.servlet.ServletContextListener;
  5. public class MyListener implements ServletContextListener {
  6. @Override
  7. public void contextDestroyed(ServletContextEvent arg0) {
  8. }
  9. @Override
  10. public void contextInitialized(ServletContextEvent event) {
  11. //指定要讀取的文件路徑,此處的test.txt放在工程的web目錄下面
  12. InputStream is = MyListener.class.getResourceAsStream("/../../web/test.txt");
  13. if(is!=null){
  14. byte []bytes = new byte[1024];
  15. try {
  16. while(is.read(bytes)>0){
  17. System.out.println(bytes.toString());
  18. }
  19. } catch (IOException e) {
  20. e.printStackTrace();
  21. }finally{
  22. if(is!=null){
  23. try {
  24. is.close();
  25. } catch (IOException e) {
  26. e.printStackTrace();
  27. }
  28. }
  29. }
  30. }
  31. }
  32. }

工程目錄結構圖:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved