您的位置:首页 > 其它

有关于web.xml中的配置说明

2010-01-14 11:44 531 查看
<jsp-config> 包括 <taglib> 和 <jsp-property-group> 两个子元素。其中<taglib> 元素在JSP 1.2 时就已经存在;而<jsp-property-group> 是JSP 2.0 新增的元素。<jsp-property-group> 元素主要有八个子元素,它们分别为:
1.<description>:设定的说明
2.<display-name>:设定名称
3.<url-pattern>:设定值所影响的范围,如: /CH2 或 /*.jsp
4.<el-ignored>:若为 true,表示不支持 EL 语法
5.<scripting-invalid>:若为 true,表示不支持 <% scripting %>语法
6.<page-encoding>:设定 JSP 网页的编码
7.<include-prelude>:设置 JSP 网页的抬头,扩展名为 .jspf
8.<include-coda>:设置 JSP 网页的结尾,扩展名为 .jspf

贴一个简单配置:

view plaincopy to clipboardprint?
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<scripting-invalid>true</scripting-invalid>
<include-prelude>/jsp/segments/taglibs.jspf</include-prelude>
<include-coda>/jsp/segments/coda.jspf</include-coda>
</jsp-property-group>
<jsp-property-group>
<url-pattern>*.do</url-pattern>
<scripting-invalid>true</scripting-invalid>
<include-prelude>/jsp/segments/taglibs.jspf</include-prelude>
<include-prelude>/jsp/segments/coda.jspf</include-prelude>
</jsp-property-group>
</jsp-config>
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<scripting-invalid>true</scripting-invalid>
<include-prelude>/jsp/segments/taglibs.jspf</include-prelude>
<include-coda>/jsp/segments/coda.jspf</include-coda>
</jsp-property-group>
<jsp-property-group>
<url-pattern>*.do</url-pattern>
<scripting-invalid>true</scripting-invalid>
<include-prelude>/jsp/segments/taglibs.jspf</include-prelude>
<include-prelude>/jsp/segments/coda.jspf</include-prelude>
</jsp-property-group>
</jsp-config>

以上配置指明在所有*.jsp,*.do的路径中投不能是使用scriptlet(jsp 脚本),因为这会是java代码和html代码混杂在一起,稀释了代码的清晰度,增加项目维护难度。include-prelude设置每个文件的抬头为/jsp/segments/taglibs.jspf,include-prelude设置了每个文件的结尾/jsp/segments/coda.jspf,记住,引入的文件必须是以.jspf为后缀的jsp插件框架文件。

通过引入抬头和结尾可以做一些标签申明和版权申明等类似工作。觉得很值得提倡!

jspf文件跟普通引入的jsp文件除了后缀没有其他区别,都不能包含<html><head><body>等标签,下面贴一个例子

view plaincopy to clipboardprint?
<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ taglib uri="../WEB-INF/tlds/c.tld" prefix="c" %>
<%@ taglib uri="../WEB-INF/tlds/fn.tld" prefix="fn" %>
<%@ taglib uri="../WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="../WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="../WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="../WEB-INF/tlds/app.tld" prefix="app" %>
<app:resource id="resource"/>
<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ taglib uri="../WEB-INF/tlds/c.tld" prefix="c" %>
<%@ taglib uri="../WEB-INF/tlds/fn.tld" prefix="fn" %>
<%@ taglib uri="../WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="../WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="../WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="../WEB-INF/tlds/app.tld" prefix="app" %>
<app:resource id="resource"/>

在jsp页面中要如果要单独引入一个jspf文件,必须要采用 <@include file="...">指令形式静态引入,jspf文件的内容才会被解析并执行其中的jsp指令和tag,使用"jsp:include"和JSTL的"c:import"都没有用,jspf文件被当作纯文本文件处理了。比如:

view plaincopy to clipboardprint?
<%@ include file="include/script/jquery.jspf"%>
<%@ include file="include/script/jquery.jspf"%>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: