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

Jsp&Servelet 学习笔记- 为Servlet创建一个JSP类型的URL

2007-02-08 17:03 901 查看
为Servlet创建一个JSP类型的URL
如果我们想访问servlet像访问一个jsp页面一样时
当我们想要链接看起来像对JSP 文件请求一样。那么对于servlet 的URL 样式时该怎么操作呢?
我们可以创建一个servlet-mapping元素使其包含一个JSP样式的URL pattern
在以前我们提到过,对于一个servlet你可以随意的为它取上别名。例如, 看上去访问JSP 文件的请求可以容易地被映射成对servlet的访问 。
Example : Deployment descriptor example of mapping a JSP-style URL to a servlet


<?xml version="1.0" encoding="ISO-8859-1"?>


<!DOCTYPE web-app


PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"


"http://java.sun.com/dtd/web-application_2_3.dtd"


>


<web-app>


<servlet>


<servlet-name>JspInfo</servlet-name>


<servlet-class>com.parkerriver.cookbook.JspInfo</servlet-class>


</servlet>


<servlet-mapping>


<servlet-name>JspInfo</servlet-name>


<url-pattern>/info.jsp</url-pattern>


</servlet-mapping>


</web-app>



对于URL样式/info.jsp 开头的斜杠意味着在这个部署描述符中从这个web应用的根目录开始。所以对这个JspInfo 的servlet而言它的完整的URL应该为:
http://www.mysite.org/cookbook/info.jsp.
你也可以对一个单独的servlet映射成对任何JSP页面的引用。

Example Mapping all JSP URLs to a single servlet


<?xml version="1.0" encoding="ISO-8859-1"?>


<!DOCTYPE web-app


PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"


"http://java.sun.com/dtd/web-application_2_3.dtd"


>




<web-app>


<servlet>


<servlet-name>JspInfo</servlet-name>


<servlet-class>com.parkerriver.cookbook.JspInfo</servlet-class>


</servlet>


<servlet-mapping>


<servlet-name>JspInfo</servlet-name>


<url-pattern>*.jsp</url-pattern>


</servlet-mapping>


</web-app>



对于使用一个文件的扩展后缀名以星号加点在加上其后缀名为URL样式时,如<url-pattern>*.jsp</url-pattern>一样,在URL样式中千万不要在加上一个斜杠(/).
对于这类型映射将会是有用处的,如果您移植一个版本为使用很多JSP 页面的应用到整个地依靠servlets 应用的另一个版本时。对于那些把你的包含以前jsp页面的URL放入收藏夹的用户将是一个相当周到的考虑。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: