Java項(xiàng)目中如何訪問(wèn)WEB-INF下jsp頁(yè)面
Java小項(xiàng)目中WEB-INF下jsp頁(yè)面如何訪問(wèn)
一:一般為啥要把jsp頁(yè)面放在WEB-INF吶?
這樣主要是為了網(wǎng)站的安全的角度來(lái)說(shuō)的,WEB-INF是安全目錄Tomcat 默認(rèn)的訪問(wèn)路徑是WebRoot下的index.jsp,放在WEB-INF下的頁(yè)面一般不配置是無(wú)法訪問(wèn)的。
你的站點(diǎn)肯定有些頁(yè)面是需要經(jīng)過(guò)登錄驗(yàn)證或其他驗(yàn)證后才能訪問(wèn)的啊,這些頁(yè)面就放在web-inf里。 如果是能不經(jīng)過(guò)驗(yàn)證就訪問(wèn)的頁(yè)面,比如主頁(yè)、登錄頁(yè)、歡迎頁(yè)這種,就不要放在web-inf里
二: 下面來(lái)看如何訪問(wèn)Web-INF下的頁(yè)面?
在創(chuàng)建JavaWeb工程時(shí)有個(gè)web.xml的部署描述符,在下面有個(gè)這樣可以定制首頁(yè)的:做如下配置來(lái)看:
<welcome-file-list> <welcome-file>/WEB-INF/jsp/test.jsp</welcome-file> </welcome-file-list> </web-app>
一般的Web.xml中默認(rèn)的<welcome-file>中的頁(yè)面是WebRoot下的index.jsp的
工程目錄如下:

便可以訪問(wèn)了:
在瀏覽器中輸入如下地址

訪問(wèn)訪問(wèn)成功后的頁(yè)面:

在SpringMVC的視圖解析器中也是配置的WEB-INF下的頁(yè)面;
最后追加的一句:使用如下的地址也是訪問(wèn)不到的:
http://localhost:8080/JSTLTest/WebRoot/WEB-INF/jsp/test.jsp
來(lái)看具體的案例:SSM整合實(shí)現(xiàn)用戶登錄的例子中對(duì)WEN-INF下的頁(yè)面的訪問(wèn)實(shí)現(xiàn):開(kāi)發(fā)環(huán)境MyEclipse 2016 CI 7
1:
這個(gè)是基于Maven 下的SSM虧框架的整合:實(shí)現(xiàn)的功能是用戶登錄:
來(lái)看web.xml中的寫(xiě)法:
<welcome-file-list> <welcome-file>/WEB-INF/jsp/main.jsp</welcome-file> </welcome-file-list>
來(lái)看如何訪問(wèn)這個(gè)小Demo:
瀏覽器中的地址的寫(xiě)法:
http://localhost:8080/TestSSM/

這樣就訪問(wèn)成功頁(yè)面了,用Maven創(chuàng)建項(xiàng)目的時(shí)候使用web-app的項(xiàng)目名稱上會(huì)多出Maven Webapp的訪問(wèn)的時(shí)候不用加的,只用你項(xiàng)目的名稱即可;
下面來(lái)看WEB-INF下的JSP頁(yè)面如何實(shí)現(xiàn)跳轉(zhuǎn)的(用a標(biāo)簽實(shí)現(xiàn)跳轉(zhuǎn))
1:一般來(lái)說(shuō)將JSP頁(yè)面放在Webapp下就比較容易實(shí)現(xiàn)了,加項(xiàng)目的路徑就可以了或者是添加<%=basePath>絕對(duì)路徑就可以了;
2:這里使用SpringMVC的控制器實(shí)現(xiàn):
首先是之前的定制首頁(yè)中可以用控制器實(shí)現(xiàn)的:
首先新建一個(gè)Controller類
@Controller
public class PageController {
//打來(lái)首頁(yè),可以取代web.中定義首頁(yè)的
//這個(gè)只是一個(gè)視圖,模型數(shù)據(jù)可以在形參里面來(lái)表示的
//這里是訪問(wèn)的根路徑
@RequestMapping(value="/",method=RequestMethod.GET)
public String showLogin(){
System.out.println("進(jìn)入頁(yè)面控制器啦");
return "login";
}
//頁(yè)面跳轉(zhuǎn)的控制器
@RequestMapping("/upload")
public String showUpload(){
System.out.println("進(jìn)入跳轉(zhuǎn)頁(yè)面控制器");
return "upload";
}
}
這個(gè)就可以不用寫(xiě)的:
<welcome-file-list> <welcome-file>/WEB-INF/jsp/test.jsp</welcome-file> </welcome-file-list> </web-app>
這樣部署項(xiàng)目啟動(dòng)服務(wù)器就可以訪問(wèn)了
http://localhost:8080/TestSSM 就可以訪問(wèn)了
來(lái)看跳轉(zhuǎn)的:main.jsp位于WEB-INF下,upload.jsp位于WEB-INF下.
1: <!-- 配置跳轉(zhuǎn)頁(yè)面控制器 -->
<a href="upload" rel="external nofollow" >上傳文件</a>
2: 頁(yè)面控制器里面寫(xiě)
@RequestMapping("/upload")
public String showUpload(){
System.out.println("進(jìn)入跳轉(zhuǎn)頁(yè)面控制器");
return "upload";
}
之前那個(gè)視圖解析器是這樣配置的.
<!--配置視圖解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean>
到此這篇關(guān)于Java項(xiàng)目中如何訪問(wèn)WEB-INF下jsp頁(yè)面的文章就介紹到這了,更多相關(guān)Java訪問(wèn)WEB-INF下jsp頁(yè)面內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Boot JPA中java 8 的應(yīng)用實(shí)例
這篇文章主要介紹了Spring Boot JPA中java 8 的應(yīng)用實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
Mybatis注解實(shí)現(xiàn)多數(shù)據(jù)源讀寫(xiě)分離詳解
這篇文章主要給大家介紹了關(guān)于Mybatis注解實(shí)現(xiàn)多數(shù)據(jù)源讀寫(xiě)分離的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Mybatis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
java實(shí)現(xiàn)二分法查找出數(shù)組重復(fù)數(shù)字
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)二分法查找出數(shù)組重復(fù)數(shù)字,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
springboot+vue實(shí)現(xiàn)頁(yè)面下載文件
這篇文章主要為大家詳細(xì)介紹了springboot+vue實(shí)現(xiàn)頁(yè)面下載文件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12

