欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

關(guān)于WEB開發(fā)-jsp的安全性 - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 網(wǎng)站建設(shè) >

關(guān)于WEB開發(fā)-jsp的安全性

發(fā)表時(shí)間:2010-3-18

發(fā)布人:葵宇科技

瀏覽次數(shù):51

雖然做了大半年的web開發(fā)了,但一直浮于表面,東西會(huì)做,但很多原理不通,要想成為技術(shù)牛人光會(huì)做是遠(yuǎn)遠(yuǎn)不行的,因?yàn)榧词箷?huì)做但不會(huì)講且不能舉一反三,哎,想當(dāng)年高中數(shù)學(xué)之所以這么好就是因?yàn)楦咧袛?shù)學(xué)原理我都一清二楚,舉一反三,興手捻來,反而到了現(xiàn)在有點(diǎn)急功近利,急于求成,我這不是倒退了么?我甘心做一個(gè)下平庸的人么,答案顯然不是,所以從今天起我要做研究生階段所沒有做過的研究,從web開發(fā)做起,養(yǎng)成研究的習(xí)慣,養(yǎng)成動(dòng)腦的習(xí)慣,崛起吧。。呵呵,遙想了一下當(dāng)年,哎,往事知多少啊,開始正題啦!

  

  今天就先寫一個(gè)WEB開發(fā)的小心得吧。

  在我做的SSH項(xiàng)目,有大量的jsp頁(yè)面,在開始做項(xiàng)目的時(shí)候,我就只會(huì)機(jī)械的學(xué)別人在struts里面配頁(yè)面之間的跳轉(zhuǎn)路徑,雖然后來知道了struts的原理,了解了跳轉(zhuǎn)的過程,但是真正自己要用到非struts環(huán)境底下的頁(yè)面跳轉(zhuǎn)的時(shí)候發(fā)現(xiàn)經(jīng)常跳轉(zhuǎn)報(bào)錯(cuò),無論我是用相對(duì)路徑還是絕對(duì)路徑都報(bào)錯(cuò),這就搞的我很郁悶了,這究竟是為什么呢?

  原來這是JSP的安全性作的鬼。

  在J2EE中其主要安全性就體現(xiàn)在web工作目錄的WEB-INF文件夾下.如果將一個(gè)頁(yè)面保存在WEB-INF文件下 ,那么該頁(yè)面則不能被用戶訪問,就好比小偷都看不見我有什么,他還能知道要偷什么嗎.. 因此如果將一個(gè)頁(yè)面放在WEB-INF文件夾下,那么該頁(yè)面的安全性將得到提高... 但有時(shí)候當(dāng)我們需要訪問該頁(yè)面時(shí),卻無法訪問,如何能夠訪問WEB-INF文件夾下的頁(yè)面呢?

  struts為此提供了很便捷的跳轉(zhuǎn)環(huán)境。在struts中每一個(gè)跳轉(zhuǎn)都是通過一個(gè)action來處理的,action處理完了之后在forward到相對(duì)地址就行,這個(gè)很簡(jiǎn)單。

  但是問題是如果我不通過action來處理跳轉(zhuǎn),我想直接從web-inf的a.jsp頁(yè)面跳到b.jsp頁(yè)面怎么辦呢?通常這個(gè)時(shí)候我們會(huì)試下相對(duì)地址/b.jsp 絕對(duì)地址/WEB-INF/b.jsp或者<%=request.getContext()=%>/WEB-INF/b.jsp,但無論怎么搞都不行,這個(gè)時(shí)候就比較崩潰。想直接跳轉(zhuǎn)從安全性的角度來看肯定不行的,因?yàn)樵赪EB-INF底下web容器是不讓你看見他的跳轉(zhuǎn)路徑的。直接跳轉(zhuǎn)不行,間接跳轉(zhuǎn)還是有的,比如struts的action跳轉(zhuǎn)就是一種間接,為什么間接就是安全的呢?因?yàn)樗奶D(zhuǎn)地址是在web.xml里面配好的,訪問的人是看不見的所以是間接安全的。難道只有struts可以完成間接的任務(wù),顯然不是了。其實(shí)想一想struts的action是什么東西就知道怎么做了,struts的action說白了還是一個(gè)servlet,所以可以通過servlet來完成任務(wù)了。

首先在web.xml里面配置servlet和servlet mapping

<servlet>
<servlet-name>goto</servlet-name>
<jsp-file>/WEB-INF/jsp/test.jsp</jsp-file>--要跳轉(zhuǎn)到的頁(yè)面
</servlet>
<servlet-mapping>
<servlet-name>goto</servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>

配置好了之后在jsp頁(yè)面里用a就可以跳轉(zhuǎn)了<a href="/工程名/test">測(cè)試頁(yè)面跳轉(zhuǎn)</a>--這里一定要“/工程名/test”

通過servlet跳轉(zhuǎn)還是比較麻煩了,但是這樣能保證JSP頁(yè)面的安全性,想兩全其美是比較難的了。

 當(dāng)然如果安全要求不高,那就可以做成很簡(jiǎn)單的了,直接把所有的jsp頁(yè)面全部放在webRoot底下,在WebRoot下頁(yè)面用戶可以直接輸入地址訪問。

相關(guān)案例查看更多