• 用 Tomcat 和 Eclipse 开发 Web 应用程序


    用 Tomcat 和 Eclipse 开发 Web 应用程序[转载]

     Tomcat 术语 (Terminology):

    • Context - 简要地说,一个Context就是一个web应用。
    • Term2 - 就是这样.
    • Term3 - 就是这样!

    Tomcat目录和文件:

      环境变量 $CATALINA_HOME 是Tomcat安装的根目录;tomcat可以设置为多个实例,对于每一个示例使用$CATALINA_BASE变量配置。如果没有多实例,默认情况下$CATALINA_BASE

    These are some of the key tomcat directories:

    • /bin - Startup, shutdown, and other scripts. The *.sh files (for Unix systems) are functional duplicates of the *.bat files (for Windows systems). Since the Win32 command-line lacks certain functionality, there are some additional files in here.
    • /conf - Configuration files and related DTDs. The most important file in here is server.xml. It is the main configuration file for the container.
    • /logs - Log files are here by default.
    • /webapps - This is where your webapps go.

     

    Apache Tomcat & Eclipse 平台是一款杰出的 Web 开发平台

    若将 Eclipse 与 Apache Tomcat 直接集成,那么将其用作 Web 开发平台就会更为容易。通过本文,了解如何设置 Eclipse 和 Apache Tomcat V5.5 来开发经典的 Hello World servlet。

    Nathan A. Good, 作家兼软件工程师, Freelance Developer

     

      Nathan A. Good 居住在明尼苏达州的双子城。其专职工作是软件开发、软件架构和系统管理。在不编写软件时,他喜欢组装 PC 和服务器、阅读和撰写技术文章,鼓励他的所有朋友转用开源软件。他自己编著以及与他人合著了很多书籍和文章,这其中包括 Professional Red Hat Enterprise Linux 3Regular Expression Recipes: A Problem-Solution ApproachRegular Expression Recipes for Windows Developers: A Problem-Solution ApproachPHP 5 Recipes: A Problem-Solution Approach 和最新的力作 Foundations of PEAR: Rapid PHP Development


    developerWorks 投稿作者

    2007 年 5 月 25 日

    编辑的注释:本文是 Geoffrey Duck 在 2004 年 6 月发表的文章 “使用 Eclipse 作为 Jakarta Tomcat 的开发环境” 的后续篇。

    所需的组件

      Eclipse V3.2 Callisto 集成开发环境 (IDE) 包括了用于 Web 开发及与服务器集成的工具。所以,除了软件开发工具箱 (SDK) 之外,只需安装 Eclipse 和 Apache Tomcat。

      Eclipse IDE 是一种开源 IDE,用作 Java™Server Pages (JSP) 和 Java 文件的开发环境。如若同时安装 Web 和 Java 2 Platform,Enterprise Edition (J2EE) 开发工具,那么 Eclipse 将非常适合于创建 HTML、JSP 和 servlet。

      运行 servlet 需要 Java SDK。最后,在 Java Servlet 和 Java Server Page 的正式参考实现中还会用到 Apache Tomcat,它是一款开源 Web 和 servlet 容器。

    安装

      Eclipse 和 Tomcat 的安装非常类似 — 都需要将归档文件解压缩到本地硬盘上的文件夹。如果想要卸载任何一个,只需将解压缩后的文件所在的文件夹删除即可。

    安装 Eclipse

      要安装 Eclipse IDE,将从 Eclipse 网站下载的压缩文件 (.zip 或 .tar.gz) 解压缩,然后将压缩后的文件夹放入合适的位置。我会根据所使用的操作系统的约定来选择安装的位置。如果在 Macintosh 上安装 Eclipse,我会将 Eclipse 文件夹放在 Applications 文件夹内。如果使用的是 Microsoft™ Windows™,我会将解压缩后的文件夹放入 C:Program 文件目录。

      下载和安装了 Eclipse 后,就可以启动它了。在开始创建 Web 项目之前,您需要安装 J2EE 和 Web Development 插件。所幸的是,借助 Callisto Discovery 站点很容易安装这些插件。

    安装 Web 工具

      Eclipse IDE 运行正常后,选择 Help > Software Updates > Find and Install。这个选项会让您可以下载和安装 Web 工具,且无需转到 Web 站点。

      选择 Search for New Features to Install,如下所示,然后单击 Next

    图 1. 安装/更新窗口
    安装/更新窗口

    选择 Callisto Discovery Site,如下所示,然后单击 Next

    图 2. 选择 Callisto Discovery Site
    选择 Callisto Discovery Site

     Callisto Discovery Site 下,选中 Web and J2EE Development 复选框。向导会随即警告您,尚缺少依赖项。单击 Select Required,警告消失。在 Graphical Editors and Frameworks and Models and Model Development 类别中的部分或全部组件会被选中(如图 3 所示),这些组件是安装 Web 和 J2EE 插件所必需的。

    图 3. 选择要安装的特性
    选择要安装的特性

      单击 Next 以继续,针对所选的每个特性的证书协议也会继而出现。如果您同意这些证书,就选择接受,继续向导的后续过程。当 IDE 完成插件的安装后,就会要求您重启 Eclipse 以便更改能够生效。在继续之前,请务必重启 IDE。

      重启了 IDE 后,开始开发动态 Web 项目所需的新特性就已准备完毕。

    安装 Tomcat

    要安装 Apache Tomcat,将所下载的归档文件解压缩并放入到目录中,我将其放在了我的 C:apps 目录下以便于日后查找。到目前所做的这些就足够了,使用随后显示的 Eclipse 来启动 Tomcat。


    创建一个新的 Web 项目

      从 Eclipse IDE,选择 File > New > Project 查看项目向导。在 Wizards 框,输入 Web,而 New Project 窗口会过滤向导以只显示匹配的那些项。利用这种方法可以很容易找到向导,而无需遍历每一项。

      从列表中选择 Dynamic Web Project。我们要使用 Standard Web Project Wizard 来建立静态 HTML Web 项目。 虽然您也可以在技术上使用 Tomcat 运行静态 Web 站点,但 Web 服务器,比如 Apache Web Server 更适合于静态内容。 专门为服务于静态页面而设计的 Web 服务器拥有的开销更少,且专为此目的作了调优。

    以运行库为目标

      在 Target Runtime 下,可以看到 <None>,如图 4 所示,由于您尚未为 Apache Tomcat 创建运行库,所以需要单击 New 打开 New Target Runtime Wizard。从 Apache 文件夹中选择 Apache Tomcat V5.5,如图 5 所示,然后单击 Next

    图 4.创建一个新的动态 Web 项目
    创建一个新的动态 Web 项目
    图 5.创建一个新的服务器运行库
    创建一个新的服务器运行库

      现在,您可以命名此运行库,当然保留 Apache Tomcat V5.5 的默认名也可以。单击 Browse来定位用于 Apache Tomcat 配置的基本文件夹(我的是 C:appsapache-tomcat-5.5.20,如图 6 所示)。若无特殊原因,我建议不要更改,保留 IBM® Java Runtime Environment (JRE) 版本作为工作台的默认 JRE。输入有效目录之后,单击 Finish 创建运行库配置。

    图 6. 定义服务器位置
    定义服务器位置

    运行库配置

      若您日后发现需要更改自己的运行库配置,可以通过选择 Window > Preferences 实现此目的。在 filter 框,键入 Runtime,列表就会在 Server 类别下显示已安装的运行库配置设置。选择您的 Apache Tomcat 运行库,然后单击 Edit 来更改名称、目录位置或 JRE 版本。

      您还需要选择是否想要转换到 J2EE Perspective。我总是选择是,因为这个透视图包含了一些很有用的视图,比如 Servers 视图,可以帮助您日后启动和停止 Tomcat。通过选择 Window > Show View 可以打开 Servers 视图。

    添加服务器

      Servers 视图目前没有包含任何内容。此视图针对的是应用程序和 Web 服务器;它让您可以控制它们并监视其状态。要从 IDE 直接控制 Tomcat,可通过从上下文敏感菜单选择 New > Server 来向 Tomcat 添加引用。图 7 所示的 New Server 向导将默认指向刚刚创建的那个 Apache Tomcat V5.5 运行库。

    图 7. 定义新服务器
    定义新服务器

      单击 Next。系统提问您是否想要向服务器添加项目。选择在之前的步骤中创建的那个项目,然后单击 Add

    图 8. 向服务器添加项目
    向服务器添加项目

      单击 Finish 关闭向导。现在,Servers 视图包含了 Tomcat V5.5 Server,且其下还包含项目。

    图 9. Servers 视图中的 Tomcat 服务器
    Servers 视图中的 Tomcat 服务器

    创建示例页

      测试新的动态 Web 项目以及 Tomcat 服务器集成的最简单方法是创建简单的 JSP 并将其部署到 Tomcat。您可以通过选择 File > New > Other 创建新的 JSP 文件,或者您也可以使用上下文敏感菜单,方法是右键单击 Project Explorer 视图中的项目名称,并选择 New > JSP

    确保父目录是 WebContent,并将此文件命名为 index.jsp。单击 Finish 使用默认模板创建页面。如果单击 Next,还可以选择想要为新页面选用的模板(比如 HTML 或 XHTML)。对于本测试而言,可保留默认选项。

    如下所示的页面代码显示了一个简单的日期,这表明该代码可以正常工作。

    清单 1. index.jsp 的内容
     1 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
     2     pageEncoding="ISO-8859-1"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
     4     "http://www.w3.org/TR/html4/loose.dtd">
     5 <html>
     6 <head>
     7 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
     8 <title>My Title</title>
     9 </head>
    10 <body>
    11 <% java.util.Date d = new java.util.Date(); %>
    12 <h1>
    13 Today's date is <%= d.toString() %> and this jsp page worked!
    14 </h1>
    15 </body>
    16 </html>
    View Code

    部署此页

      测试页完成后,可使用 Eclipse 将其重新部署到 Apache Tomcat。在 Servers 视图,注意到 State 已被设置成 Republish。这是因为自项目上次部署到服务器以来,已经发生了很多更改。右键单击此服务器并从菜单中选择 Publish。一旦项目被部署到此服务器,状态就会变成 Synchronized。

    存在问题?

      事情有时难免会出错。要查看从 Tomcat 产生的错误,可以使用 Console 视图。Console 捕获源自您在 Servers 视图中设置的服务器的输出。

      项目成功部署且服务器成功启动之后,可以打开浏览器并导航到 http://localhost:8080/[ProjectName]/(其中 [ProjectName] 是所创建的动态 Web 项目的名称)。您所创建的新的 Web 页会随即出现,且日期应该是当前日期。如果刷新页面,日期还会随之变化。

    图 10. index.jsp 在浏览器中的输出
    index.jsp 在浏览器中的输出

    Hello World servlet

      您可以向您的项目添加 Java servlets 并加以部署。要为测试的目的而快速创建一个 servlet,可以使用 Servlet Wizard,方法是右键单击 Project Explorer 视图中的动态 Web 项目并选择New > Other。在 Web 文件夹下,选择 Servlet,然后单击 Next

      将包名称 com.example.servlets 添加到 Java Package 旁,将 HelloServlet 添加到 Class name 旁。单击 Finish。作为示例,可以保留默认值。Eclipse IDE 会生成一个 servlet 类。要查看应用当中的这个测试用 servlet,可以在 doGet() 方法中添加一行代码来向 ResponseWriter 打印消息。servlet 类应该类似如下所示的这个。

    清单 2. HelloServlet.java 的内容
     1 package com.example.servlets;
     2 
     3 import java.io.IOException;
     4 import javax.servlet.ServletException;
     5 import javax.servlet.http.HttpServletRequest;
     6 import javax.servlet.http.HttpServletResponse;
     7 
     8 /**
     9  * Servlet implementation class for Servlet: HelloServlet
    10  *
    11  */
    12  public class HelloServlet extends javax.servlet.http.HttpServlet 
    13      implements javax.servlet.Servlet {
    14 
    15     /* (non-Java-doc)
    16      * @see javax.servlet.http.HttpServlet#HttpServlet()
    17      */
    18     public HelloServlet() {
    19         super();
    20     }       
    21     
    22     /* (non-Java-doc)
    23      * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, 
    24          HttpServletResponse response)
    25      */
    26     protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    27         throws ServletException, IOException {
    28         response.getWriter().write("Hello, world!");
    29     }      
    30     
    31     /* (non-Java-doc)
    32      * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, 
    33          HttpServletResponse response)
    34      */
    35     protected void doPost(HttpServletRequest request, HttpServletResponse response) 
    36         throws ServletException, IOException {
    37         // TODO Auto-generated method stub
    38     }                 
    39 }
    View Code

    添加此 servlet 后,Eclipse IDE 会提示项目有所更改。重新查看一下 Servers 视图;Restart 现在出现在 Tomcat 服务器旁的 Status 列。要重启此服务器,右键单击 Servers 视图中的此服务器,然后选择 Restart > Start。 打开浏览器并导航到 http://localhost:8080/[ProjectName]/HelloServlet(其中 [ProjectName] 是动态 Web 项目的名称)。文本 "Hello, world!" 将会出现在浏览器窗口中。您可以添加日期,将与 index.jsp 文件中的类似的代码添加到 doGet() 方法,并使用 Eclipse IDE 重新部署 servlet。


    结束语

      不用离开 IDE 就可以启动、停止和部署到服务器,这种开发 JSP 和 servlet 的方法非常高效。Eclipse 和 Apache Tomcat 的组合则提供了一种简单的集成环境,让您可以加速开发。

    部分内容摘录于IBM developerWorks

    部署Tomcat应用

      参考官方文档 https://tomcat.apache.org/tomcat-8.0-doc/deployer-howto.html

    参考:

         IBM developerWorks

       http://tomcat.apache.org/tomcat-8.0-doc/index.html

  • 相关阅读:
    又来项目了,星座运势widget
    ubuntu下编译android源代码
    Android UI,界面辅助设置工具,可随意拖动控件,比google官方提供的方便
    Android 1.5原生软件开发SDK公布
    REST转自WIKI
    Android SDK 1.5 包装索引
    android google market FreshFace上线了,大家都试用试用,反正免费的
    JSON
    ubuntu命令
    网站支付宝接口错误代码:TRADE_DATA_MATCH_ERROR怎么处理? uz
  • 原文地址:https://www.cnblogs.com/7explore-share/p/4777362.html
Copyright © 2020-2023  润新知