當前位置:首頁 » 網頁前端 » java讀取webinf下的文件
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

java讀取webinf下的文件

發布時間: 2023-01-15 11:39:46

1. 怎麼樣讓servlet訪問web-inf下的網頁或jsp文件

web-inf目錄只能在sevlet(或者spring的control,struts的action,本質都是sevlet)中訪問。
也就是只能通過java後台訪問,這里web-inf下的內容是不對外開放的/安全的,不能通過url直接訪問。已避免非法人員通過url自己操作一些比較私密的文件信息。
Servlet訪問WEB-INF目錄下的info.jsp文件的代碼如下:
1、web.xml中的servlet可以這樣配置:
<servlet>
<servlet-name>index</servlet-name>
<servlet-class>跳轉到首頁的action</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>index</servlet-name>
<url-pattern>/index.action</url-pattern><!--映射的路徑-->
</servlet-mapping>
2、servlet中實現方法:
RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/info.jsp");
dispatcher.forward(request, response);

2. qqdat.dat文件放在WEB-INF文件夾下,java如何獲取啊 是用RandomAccessFile隨機訪問類讀取呢個路徑噶

在類的方法中調用this.getClass().getResource("/").getPath(),自己再載取字元串就可以

3. jsp 在java程序中獲取 web-inf目錄

你需要一個servlet或者action,servlet舉例:
建一個servlet,在doPost()中通過,
request.getSession().getServletContext().getRealPath("/WEB-INF");

4. 在java中怎麼訪問web-inf 目錄下的jsp頁面。

web-inf規下面的東西是安全的,所以說你直接給web-inf里的jsp是不能紡問的,但是你可以通過servlet或都struts2框架的action進行紡問

5. java文件中怎樣獲取webcontent/web-inf/conf目錄下的xml配置文

遠標教育為你解答:

ProcereFactory是本類的名稱
java.net.URL url = this.getClass().getClassLoader().getResource(configFileName);

tomcat啟動後才能獲取

6. spring test 怎麼讀取web-inf下的applicationcontext

假設Spring配置文件為applicationContext.xml

一、Spring配置文件在類路徑下面

在Spring的java應用程序中,一般我們的Spring的配置文件都是放在放在類路徑下面(也即編譯後會進入到classes目錄下)。

以下的項目,因為是用maven管理的,所以配置文件都放在「src/main/resources」目錄下


這時候,在代碼中就不可以使用來載入配置文件了,而應使用。

Java代碼

=new("src/main/webapp/WEB-INF/applicationContext.xml");

然後獲取相應的bean。

如果代碼想用Junit測試框架來測試,則Spring提供了對Junit支持,還可以使用註解的方式:

Java代碼

@RunWith(SpringJUnit4ClassRunner.class)

@ContextConfiguration(locations={"file:src/main/webapp/WEB-INF/applicationContext.xml"})

只需要在相應的Test類前面加上此兩個註解(第二個註解用來指明Spring的配置文件位置),就可以在Junit Test類使用中Spring提供的依賴注入功能。

下面是一個Spring管理下的Junit測試類:

Java代碼

packagecom.sohu.group.service.external;

importjava.util.List;

importorg.junit.Test;

importorg.junit.runner.RunWith;

importorg.springframework.beans.factory.annotation.Autowired;

importorg.springframework.test.context.ContextConfiguration;

importorg.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)

@ContextConfiguration({"file:src/main/webapp/WEB-INF/applicationContext.xml"})

{

@Autowired

;

@Test

(){

List<String>list=suFriendService.getUserFollowerList("[email protected]");

System.out.println("------"+list);

}

}

7. java web應用中把 WEB-INF\classes\db.properties 在static中如何讀取裡面的數據

pp=new Properties();
fis = new FileInputStream("C:\\Program Files (x86)\\Apache Software Foundation\\Tomcat 7.0\\webapps\\test\\WEB-INF\\classes\\db.properties");
pp.load(fis);

8. java怎麼讀取web工程裡面的文件

平時寫程序的時候,很多時候提示文件找不到,而拋出了異常,現在整理如下

一 相對路徑的獲得
說明:相對路徑(即不寫明時候到底相對誰)均可通過以下方式獲得(不論是一般的java項目還是web項目)
String relativelyPath=System.getProperty("user.dir");
上述相對路徑中,java項目中的文件是相對於項目的根目錄
web項目中的文件路徑視不同的web伺服器不同而不同(tomcat是相對於 tomcat安裝目錄\bin)

二 類載入目錄的獲得(即當運行時某一類時獲得其裝載目錄)
1.1)通用的方法一(不論是一般的java項目還是web項目,先定位到能看到包路徑的第一級目錄)

InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt");
(test.txt文件的路徑為 項目名\src\test.txt;類TestAction所在包的第一級目錄位於src目錄下)

上式中將TestAction,test.txt替換成對應成相應的類名和文件名字即可

1.2)通用方法二 (此方法和1.1中的方法類似,不同的是此方法必須以'/'開頭,
InputStream is=Test1.class.getResourceAsStream("/test.txt");
(test.txt文件的路徑為 項目名\src\test.txt,類Test1所在包的第一級目錄位於src目錄下)

三 web項目根目錄的獲得(發布之後)
1 從servlet出發

可建立一個servlet在其的init方法中寫入如下語句
ServletContext s1=this.getServletContext();
String temp=s1.getRealPath("/"); (關鍵)
結果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ (002_ext為項目名字)

如果是調用了s1.getRealPath("")則輸出D:\工具\Tomcat-6.0\webapps\002_ext(少了一個"\")
2 從httpServletRequest出發

String cp11111=request.getSession().getServletContext().getRealPath("/");

結果形如:D:\工具\Tomcat-6.0\webapps\002_ext\

四 classpath的獲取(在Eclipse中為獲得src或者classes目錄的路徑)
方法一 Thread.currentThread().getContextClassLoader().getResource("").getPath()
eg: String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
System.out.println("t---"+t);
輸出:t---/E:/order/002_ext/WebRoot/WEB-INF/classes/

方法二 JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse為src某一個包中的類,下同)

9. 普通java類文件如何訪問WEB-INF目錄下的文件,不是Servlet、JSP類文件

你就用System.out.print();在控制台輸出一下內容咯!例如一下就是訪問配置文件並輸出相應變數的方法
public void capturePropertys(String driver,String url,String user,String password){
Properties prop = new Properties();
InputStream is = a_connection_Propertys.class.getResourceAsStream("db.properties");
//getClass().getResourceAsStream("mysql.properties");
try{
prop.load(is);
}catch(IOException e)
{
System.out.println("[Dbconnection]打開 文件 出錯");
}

this.jdbc = prop.getProperty(driver);
this.url = prop.getProperty(url);
this.user = prop.getProperty(user);
this.password = prop.getProperty(password);

System.out.println("jdbc="+this.jdbc);
System.out.println("url="+this.url);
System.out.println("user="+this.user);
System.out.println("password="+this.password);

}