您的位置:首页 > Web前端 > JavaScript

02---jsp内置对象06(web安全性及config对象)

2012-04-13 09:25 519 查看
在Tomcat服务器配置的时候虚拟目录中必须存在一个WEB-INF的文件夹,但是我们访问的时候

并不能发现该文件夹;

WEB-INF文件夹一般是不会让用户 的,所以其安全性很高;

如果现在将一个jsp文件保存在了web-inf文件夹之中,那么肯定是很安全的;

但是一个新的问题出现了,我们如何访问web-inf中网页呢?

此时我们可以通过映射路径的方式完成。要想完成映射,修改web.xml即可;

<servlet>

<servlet-name>he</servlet-name>

<jsp-file>/WEB-INF/hello.jsp</jsp-file>

</servlet>

<servlet-mapping>

<servlet-name>he</servlet-name>

<url-pattern>/hello.lid</url-pattern>

</servlet-mapping>

servletmapping表示的是一个映射路径的配置,在访问的时候直接输入

url-pattern后面的内容之后就可以找打servlet-name再找到servlet节点中配置的

jsp-file,从而实现jsp的页面的访问;

输入url:http://localhost/lid/hello.lid即可访问到;

但是这些与config对象有什么关系呢?

以为config对象只对映射后的文件起作用;

1、config对象:

config对象是javax.servlet.ServletConfig接口的实例,主要的功能是取得一些初始化的配置

信息;

常用的方法:

public String getInitParameter(String name);

public Enumeration getInitParameterNames();

所有的初始化参数都需要在web.xml文件之中配置出来;

<servlet>

<servlet-name>he</servlet-name>

<jsp-file>/WEB-INF/hello.jsp</jsp-file>

<init-param>

<param-name>driver</param-name>

<param-value>org.gjt.mm.mysql.Driver</param-value>

</init-param>

<init-param>

<param-name>url</param-name>

<param-value>jdbc:mysql://localhost:3306/lid</param-value>

</init-param>

</servlet>

上面的两个初始化参数只是针对于配置的hello.lid的映射有作用,对其他的没有任何作用;

hello.jsp:

<%@ page contentType="text/html" pageEncoding="gbk"%>

<html>

<head><title>这是测试</title></head>

<body>

<h1>你好,终于见面了,嘿嘿……</h1>

<%

String dbDriver=config.getInitParameter("driver");

String dbURL=config.getInitParameter("url");

%>

<h3>驱动程序:<%=dbDriver%></h3>

<h3>连接地址:<%=dbURL%></h3>

</body>

</html>

config只能获得映射文件中的初始化参数,由此可见web安全性与config是绑定在一起的;

小结:

·将页面资源保存在WEB-INF文件夹之中是最安全的,但是必须通过映射路径才可以访问;

·通过config对象可以取得初始化的配置参数;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: