Web安全性(文件映射)、config对象
配置/WEB-INF/web.xml文件:
<servlet>
<servlet-name>count</servlet-name>
<jsp-file>/WEB-INF/count.jsp</jsp-file>
<init-param>
<param-name>driver</param-name>
<param-value>org.git.mm.mysql.Driver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306//lihui</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>count</servlet-name>
<url-pattern>/hello</url-pattern> <!-- http://localhost:8080/Demo/hello Demo是工程名-->
</servlet-mapping>
</web-app>
其中/WEB-INF/count.jsp是在工程Demo目录下的,之前建的工程目录下有一个WebRoot文件夹,不知为何这个不能映射,后来查资料,猜测,WebRoot文件夹是外部可见文件夹,所以直接用路径访问,而WEB-INF对外部不可见,所以通过映射来访问。
这样设置之后就可以通过访问 http://localhost:8080/Demo/hello 来访问count.jsp文件了。
此外,<init-param>标签定义了几个参数,在jsp文件中可以通过config对象调用相应函数来获取这些参数,并且因为这些初始化参数是在<servlet>节点中配置的,所以必须通过映射路径才能取得这些参数。
<%
String dbDriver = config.getInitParameter("driver");
String dbUrl = config.getInitParameter("url");
%>