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

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样式时,如*.jsp一样,URL样式中千万不要在加上一个斜杠(/.

对于这类型映射将会是有用处的,如果您移植一个版本为使用很多JSP 页面的应用到整个地依靠servlets 应用的另一个版本时。对于那些把你的包含以前jsp页面的URL放入收藏夹的用户将是一个相当周到的考虑。

 

你可能感兴趣的:(javaweb技术)