一个开发人员眼中的JSP技术(下)(2) 下面的标签库描述符定义了insertCatchOfDay标签。注意,这个文件定义了定制标签的名称,属性和相关的Tag Handler类: xml version="1.0" ?> insertCatchOfDay com.sun.CatchOfDayHandler Queries menu database for the catch of the day。 meal 与定义属性的名称一样,标签库描述符也能够定义数据类型并指定其属性(无论是否需要);在Tag Handler被执行之前,它允许JSP引擎去做某些错误检查。还有其他的信息,比如说为了使用JSP创建工具,库名和版本号也可以包含在标签库中。 更多的例子 在下面的例子中,第一个例子在JSP页面中使用了HTTP请求对象 (HttpServletRequest) 来判断用户浏览器的版本并从三个HTML页面中的一个中返回相应的内容: <%@ page language=="java" info="Example JSP #1" %> <%! String agent; %> <% agent = request.getHeader("User-Agent"); if ( agent.startsWith("Mozilla/4.0") { %> <%-- Return content for 4.0 browsers --%> <%@ include file="ver4.html" %> <% } else if ( agent.startsWith("Mozilla/3.0") { %> <%-- Return content for 3.0 browsers --%> <%@ include file="ver3.html" %> <% } else { %> <%-- Return content for other/unknown browsers --%> <%@ include file="other.html" %> <% } %> 注意:此页面无须声明或初始化HTTP请求对象就可以直接对它进行访问。请求和响应(HttpServletResponse)对象都能够隐含地在JSP 页面中使用。和servlet一样,JSP页面能够使用请求对象从HTML窗体中获得参数值。 <%@ page language="java" info="Example JSP #2" %> <%@ include file="header.html" %> <%! String selections[], info; %>
Here are your current selections: