web项目访问jsp的方式及页面间的跳转

来源:互联网 发布:sor文件打开软件 编辑:程序博客网 时间:2024/05/16 05:07

今天借鉴各位大佬的经验,加以自己的理解
小小写一个WEB开发的心得
在做的涉及到前端的项目时,有很多的jsp页面,在刚开始做项目的时候,只会机械的学别人的配置,或是web.xml中的配置,或是SSH中struts里面配页面之间的跳转路径等等,但是反过头来,真正要在刚建web项目时,访问其下jsp,或是实现页面间跳转的时候就会发现经常跳转报错,无论我是用相对路径还是绝对路径都报错,这就搞的我很郁闷了,这究竟是为什么呢?
原来这是JSP的安全性作的鬼。

在J2EE中其主要安全性就体现在web工作目录的WEB-INF文件夹下。

一般为啥要把jsp页面放在WEB-INF呐?这样主要是为了网站的安全的角度来说的,WEB-INF是安全目录Tomcat 默认的访问路径是WebRoot下的index.jsp[体现在下图,它是按顺序匹配的],放在WEB-INF下的页面一般不配置是无法访问的。


因此如果将一个页面放在WEB-INF文件夹下,那么该页面的安全性将得到提高... 

但有时候当我们需要访问该页面时,却无法访问,那么如何能够访问WEB-INF文件夹下的页面呢?

此为项目目录:


  可以直接将想要访问的jsp写在WebContent下,以项目名为url进行访问

或者在web.xml中做一下配置

 <welcome-file-list>
    <welcome-file>/WEB-INF/one.jsp</welcome-file>
  </welcome-file-list>


接下来以<a>标签讲解一下jsp之间的跳转,重点是要跳转到WEB-INF下的jsp

  通常这个时候我们会试下相对地址/b.jsp、绝对地址/WEB-INF/b.jsp以及${pageContext.request.contextPath}/WEB-INF/b.jsp,但无论怎么搞都不行,这个时候就比较崩溃。

但是还是可以通过servlet来完成任务了。

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

<servlet>
   <servlet-name>goto</servlet-name>
   <jsp-file>/WEB-INF/jsp/test.jsp</jsp-file>--要跳转到的页面
 </servlet>
 <servlet-mapping>
   <servlet-name>goto</servlet-name>
   <url-pattern>/test</url-pattern>
  </servlet-mapping>

配置好了之后在jsp页面里用a就可以跳转了<a href="/工程名/test">测试页面跳转</a>

这里一定要“/工程名/test”

通过servlet跳转还是比较麻烦了,但是这样能保证JSP页面的安全性,想两全其美是比较难的了。

当然如果安全要求不高,那就可以做成很简单的了,直接把所有的jsp页面全部放在webRoot底下,在WebRoot下页面用户可以直接输入地址访问。

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 关于教养的议论文 说教养演讲稿 论教养写作背景 关于教养的故事 读论教养有感 教养作文600字 做一个有教养的人 做个有教养的人 蹲着 怎样做一个有教养的人 如何做一个有教养的人 用一句话暗示一个人没教养 教务系统 青大教务 哈理工教务 urp教务系统 教务管理 教务 华水教务 正方教务 教务专业 教务在线 教务网 教务信息网 教务系统登录入口 教务网络管理系统 武汉理工教务管理系统 燕山大学教务系统 晋中学院教务网络管理系统 教务管理系统登录入口 川北医学院教务系统 海南大学教务管理系统 晋中教务网络管理系统 淮阴工学院教务网 黄山学院教务管理系统 泰山学院教务系统 福建农林教务管理系统 平顶山学院教务管理系统 青岛工学院教务系统 西安医学院教务网 哈理工教务在线