• 《TomCat与Java Web开发技术详解》(第二版) 第三章节的学习总结--一个WEB应用的目录结构以及如何发布WEB应用


    这章节主要学习:如何使用tomcat来发布一个web应用:helloapp

    1.tomcat/conf/server.xml中的如下配置

          <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true">
            ......
          </Host>

    决定了:名字为localhost的虚拟主机,其应用的缺省目录是webapps;也就是说:想要在此虚拟主机上发布某一个web应用(比如这里的helloapp),则需要将此web应用的所在目录放到webapps目录中。而一个web应用的缺省入口,就是该web应用的根目录名。这就是说,可以访问http://localhost:8080/helloapp

    2.在helloapp这个web应用中,其自身的配置文件是 helloapp/WEB-INF/web.xml文件(此文件内容是区分大小写的),其内容为:

    <?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/j2ee/dtds/web-app_2_3.dtd'>
     
    <web-app>
     
      <servlet>
        <servlet-name>dispatcher</servlet-name>  //用于为servlet类定义一个名字,这样当在html中看到dispatcher,就知道它表示一个servlet类了
        <servlet-class>mypack.DispatcherServlet</servlet-class> //用于表示此servlet类的完整类名(也包括包名)。这个类名同时也就告诉了到哪里可以找到该类(helloapp/WEB-INF/classes/mypack/DispatcherServlet.class)
      </servlet>
     
      <servlet-mapping>   //映射可支持通配符,一个servlet可以对应多个servlet-mapping
        <servlet-name>dispatcher</servlet-name>  //用于指定要进行映射的servlet的名称。需要和上面的<servlet>中的名称对应,这样才能找到实际的servlet类
        <url-pattern>/dispatcher</url-pattern>  //用于指定此servlet在URL上的映射,即相对(相对是相对此web应用的缺省入口)URL路径。这样访问http://localhost:8080/helloapp/dispatcher就可以访问此servlet了
      </servlet-mapping>
     
      <welcome-file-list>
        <welcome-file>login.htm </welcome-file> 
      </welcome-file-list>
     //这里设置了:此web应用的默认主页。即若客户端访问:http://localhost:8080/helloapp/ (注意:这是一个目录),就会默认默认定位到此文件:login.htm;这与访问http://localhost:8080/helloapp/login.htm是一样的效果


      <taglib>  //定义jsp标签的位置
        <taglib-uri>/mytaglib</taglib-uri> 
        <taglib-location>/WEB-INF/mytaglib.tld</taglib-location>  //指定TLD文件的存放位置
      </taglib>
     
    </web-app>

    3.在servlet类的定义实现中,通过对输入的ServletRequest对象(来自客户端发出的http请求正文)进行再次封装,就可以将此ServletRequest对象再转发给某个jsp文件。在由此jsp文件处理后,在通过ServletResponse对象获得处理结果,并将此结果交给客户端。

    4.tomcat可以运行:A.采用开放式目录结构的web应用(即非压缩的);B.web应用的打包文件(WAR文件)。开发完毕的web应用,应该是经过打包(用jar cvf命令进行打包)后,发布WAR文件。tomcat启动后,会把webapps目录下的所有WAR文件自动展开为开放式的目录结构(因此,webapps中不能提前存在同名目录)

    5.如果不想将web应用发布到默认的webapps目录中,而是发布到其他目录中,在需要使用<Context>元素来告知新的位置(docBase)

    6.如果要使用JSP标签,则需要如下组成:一个处理标签的类(class文件)+一个TLD文件+在web.xml中配置<taglib>元素+在jsp文件中使用标签<前缀名:标签名>

  • 相关阅读:
    .Net编程接口中的迭代器(转)
    微软,您的.net为中国程序员带来了什么?(转)
    二进制,八进制,十进制,十六进制转换
    简单实现SQL Server2000数据库缓存
    联合查询
    也谈用反射实现Enum→String映射:一种重视性能的方法 (转)
    javascript事件列表解说(转)
    ASP.NET上传控件
    杂杞
    在.net中生成wml
  • 原文地址:https://www.cnblogs.com/lagujw/p/3588633.html
Copyright © 2020-2023  润新知