jsp放在web-inf下的注意事项

原文:http://blog.csdn.net/whatlookingfor/article/details/38381881

-------------------------------------------------

web-inf目录是不对外开放的,外部没办法直接访问到。所有只能通过映射来访问,比如映射为一个action或者servlet通过服务器端跳转来访问到具体的页面。这样可以限制访问,提高安全性。

         

        1、把页面资源文件只能放在webroot下面,如 CSS,JS,image等.放在WEB-INF下引用不了。

 

        2、只能用转向方式来访问WEB-INF目录下的JSP,不用采用重定向的方式请求该目录里面的任何资源。

 

        3、WEB-INF目录下文件访问资源文件时,可以忽略WEB-INF这一层目录.如index.jsp 要用css目录里的一个css文件.    <link rel="stylesheet" type="text/css" href="css/**.css" />这样就行了,从客户端的地址可以看出来服务器转向index.jsp就是在webroot下面.所以index.jsp和css目录可以讲是同一级目录。

        4、WEB-INF目录下的文件之间如何访问呢.如在main.jsp用<a href="oa.do">测试OA的路径</a>访问。如果main.jsp有很多处链接到WEB-INF目录下的其它页面.那就得有10个转向Action。这个可以用DispatchAction类加参数专门处理转向工作。

 

注: 转向方式: 如struts-config文件中配置<forward name="success" path="/WEB-INF/main.jsp" />      

或在Action中写request.getRequestDispatcher("/WEB-INF/main.jsp").forward(request, response); 

都是服务器读取了该页面内容,并发送到客户端.客户端的地址不变.内容跳转了


    重定向方式: 如struts-config文件中配置<forward name="success" path="/WEB-INF/main.jsp" redirect="true"/>

或在action中response.sendRedirect("/error.jsp");                    

重定向的含义就是服务器把地址发给客户端,让客户端去访问.这种办法显然针对WEB-INF目录是无用功.



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/539533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php打印布尔型,PHP数据类型之布尔型的介绍_PHP

布尔类型是PHP中 最简单的类型。它的值可以为 TRUE 或 FALSE。如&#xff1a;$foofalse;$foo1true;echo "为假时输出值为:".$foo; //没有输出值echo "为真时输出值为:".$foo1; //输出1这里主要的细节&#xff1a;当转换为 boolean 时&#xff0c;以下值被认…

oracle 如何终止存储过程的运行

0.查询正在执行的存储过程&#xff1a; select * from v$db_object_cache where locks > 0 and pins > 0 and typePROCEDURE;1. 在V$ACCESS视图中找到要停止进程的SID: 举例&#xff1a;存储过程名&#xff1a;CRH_ENTRY SELECT t.* FROM V$ACCESS t WHERE t.objectCRH_…

python install zabbix.4.0

1.安装 MySQLdb 模块; #!/bin/bash #this is rpm python Environment depends on function depends_rpm(){ yum clean all yum -y install gcc* python-devel python-pip mariadb mariadb-devel mariadb-server if [ $? -eq 0 ]thenpip install MySQL-python1.2.5 elsee…

asp.net 获取全部在线用户_Qamp;A | 在线考试问卷答疑

01.如何批量导入试题&#xff1f;如果您已经在word或者excel中准备好了考试文档&#xff0c;通过批量导入试题的方式&#xff0c;可以让考试问卷的制作更加方便快捷。详细了解批量导入考试的文本格式&#xff1a;【点击此处】02.如何进行考试随机抽题&#xff1f;老师事先建立题…

PHP 框架 模块化,Laravel 的模块化开发框架 Notadd RC1

本文我们要和大家分享 Laravel 的模块化开发框架 Notadd RC1 的介绍&#xff0c;它的优点是修复了首页编辑模式下滚动的BUG (Eleven)&#xff0c;修复了后台菜单管理修改后不跳转的BUG (ganlanshu0211)&#xff0c;修复后台 ESLint 的 Camelcase 的错误 (狒狒)&#xff0c;暂时…

spring mvc 工作流程

1A&#xff09;客户端发出http请求&#xff0c;只要请求形式符合web.xml 文件中配置的*.action的话&#xff0c;就由DispatcherServlet 来处理。 1B&#xff09;DispatcherServlet再将http请求委托给映射器 的对象来将http请求交给对应的Action来处理 2&#xff0…

9-2 链表

package gather;import java.util.LinkedList; import java.util.List; import java.util.ListIterator;public class TestFour {public static void main(String[] args) {// TODO Auto-generated method stub/*** 1、通过整数遍历元素时&#xff0c;不要使用链表结构&#xf…

excel切片器_如何在Excel表格中使用切片器

切片器除了在数据透视表中会使用到&#xff0c;在Excel的表格功能下面&#xff0c;也是可以进行使用的。下面就来介绍一下如何使用切片器这个工具。创建和使用切片器1.首先就是要创建一个表格。选中目标区域&#xff0c;使用快捷键CtrlT&#xff0c;创建一个表格。2.点击“插入…

分阶段付款 学php,项目整理-支付宝的支付问题

支付宝作为一个被广泛使用的支付工具&#xff0c;在是用的时候可以被广泛使用。可以使用demo提取(由于当时开发时SDK下载路径无法下载&#xff0c;直接从DEMO中筛选了需要部分)------------------我是开始开发思路的分割线--------------------------本次主要是APP支付的流程。…

使用sqlldr导入文本数据到oracle

1.sqlldr介绍 用法: SQLLDR keywordvalue [,keywordvalue,...]有效的关键字:userid -- ORACLE 用户名/口令 control -- 控制文件名 log -- 日志文件名 bad -- 错误文件名 data -- 数据文件名 dis…

Mac os区别_SN及Mac地址烧录

platform:RK3399 OS:Android 7.1 参考: 1.比特人生 https://blog.csdn.net/ielife/article/details/86719313 2.KrisFei https://blog.csdn.net/kris_fei/article/details/79447343?ops_request_misc%257B%2522request%255Fid%2522%253A%2522158883304619726869022990%2522%25…

linux 查看数据库和表 mysql 命令

2019独角兽企业重金招聘Python工程师标准>>> 查看是否有安装数据库 &#xff1a;rpm -qa|grep -i mysql 如图已安装&#xff1a; 未安装&#xff1a; 查看MySQL版本的四种方法 1 在终端下执行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看…

php mvc 逻辑层在哪,mvc的业务逻辑应该放哪里?

背景: 基于laravel的后台管理系统&#xff0c;CURD密集型业务问题&#xff1a;当直接在控制器方法中调用orm处理业务逻辑时&#xff0c;代码复用性差&#xff0c;控制器层很肥尝试解决&#xff11;&#xff1a;新建一个model层&#xff0c;将原先在控制器中的处理逻辑移到mode…

servlet/filter/listener/interceptor区别与联系

下面从几个方面阐述一下题目中四个概念的区别与联系&#xff1a; 1、概念 2、生命周期 3、职责 4、执行过程 一、概念&#xff1a; 1、servlet&#xff1a;servlet是一种运行服务器端的Java应用程序&#xff0c;具有独立于平台和协议的特性&#xff0c;并且可以动态的生成web页…

电脑系统哪个最好用_袪痘袪痘印哪个产品最好 祛痘印最好用的产品十大推荐...

原标题&#xff1a;袪痘袪痘印哪个产品最好 祛痘印最好用的产品十大推荐痘痘下去了&#xff0c;痘印却顽固不化。有些痘印如果不及时修复&#xff0c;会留下疤痕和坑。我们真的不敢去想他们。所以有痘印痘印的时候一定要及时使用护肤品&#xff0c;不要在脸上留下什么遗憾&…

python中集合符号,Python 集合符号

Android SDK Manager 无法下载更新&#xff0c;或者更新速度超慢&#xff0c;或者待安装包列表不显示解决方法: 转自 http://www.cnblogs.com/tc310/archive/2012/12/21/2828450.html http://jingyan.baidu.com/artic ...AJAX学习AJAX即“Asynchronous Javascript And XML”(异…

五阿哥钢铁电商平台Docker容器云平台建设实践——你想知道的都在这里!

前言 五阿哥钢铁电商平台&#xff08;www.wuage.com&#xff09;是由钢铁行业第一的中国五矿与互联网第一的阿里巴巴联手打造&#xff0c;并充分运用双方股东优势资源&#xff0c;即&#xff1a;阿里巴巴在大数据、电商运营、互联网产品技术上的巨大优势&#xff0c;尤其是在B2…

oracle数据导入导出

一、exp/imp与expdp/impdp的区别 1&#xff1a;把用户usera的对象导到用户userb,用法区别在于fromuserusera touseruserb ,remap_schemausera:usera 。例如 imp system/passwd fromuserusera touseruserb file/oracle/exp.dmp log/oracle/exp.log; impdp system/passwd directo…

web浏览器_Web上的分享(Share)API

我认为Web Share API非常酷&#xff0c;简而言之&#xff0c;它会利用您所使用的平台上的原生共享功能(如果该平台支持的话)。我喜欢这个&#xff1a;在iOS上激活的Web Share API远远不止这些东西&#xff1a;为什么&#xff1f;Web Share API只是几行代码。简单&#xff01;没…