java - 如何使用 javac 编译的类文件在 tomcat 7 中构建 java servlet?

标签 java tomcat servlets

我知道它与 WEB-INF\classes 有关。但这是我在将适当的 .jar 文件放入我的类路径后编译的代码。

import java.io.* ;
import javax.servlet.http.* ;

public class BeeServlet extends HttpServlet
{

    public void doGet( HttpServletRequest request , HttpServletResponse response )
    {
        response.setContentType("text/html");
        try
        {
            PrintWriter out = response.getWriter();
            out.println( "a-buzz-buzz ..." );
            out.close();
        }
        catch( Exception e )
        {
            System.out.println( "cannot get writer: " + e );
        }
    }
}

它编译得很好,但我没有找到任何类型的类似示例,例如将它放在哪里以及如何使用 localhost:8080 URL 调用它。我在没有 IDE 的情况下尝试尽可能地学习,但这一点让我感到困惑......

编辑——我已经编译了这段代码。我将它放入 tomcat 7.0/webapps/BeeServlet/WEB-INF/classes 目录,就像所有教程所说的那样。我输入 localhost:8080/BeeServlet,但没有任何反应。这是没有意义的。

最佳答案

您需要一个 Web 应用程序部署描述符 (web.xml),它提供 URL 到您的 Servlet 的映射以及您的项目在 Web 服务器上的特定目录结构。如果您在 IDE 中使用 Web 应用程序项目模板,通常会为您创建此结构。

理论阅读:http://tomcat.apache.org/tomcat-7.0-doc/appdev/deployment.html

教程:http://www.nogoodatcoding.com/howto/deploy-a-servlet-on-tomcat

web.xml 文件示例:running and deploying servlet with eclipse and tomcat 7

关于java - 如何使用 javac 编译的类文件在 tomcat 7 中构建 java servlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15328601/

相关文章:

java - Servlet 信息未在 WebSphere 上获取完整版本

java - 如何从 Java 代码调用 servlet

Java:如何验证本地主机上的图像文件是否存在

java - Selenium (WebDriver) 支持的浏览器

java - 在 TestNG XML 套件中设置系统属性

java - Swing 组件和包含层次结构

java - 如何诊断 Tomcat 7 中的 OutOfMemory 错误?

tomcat - 无法从浏览器访问 Docker tomcat

java - Hangman Java - 替换下划线

servlets - java.lang.ClassNotFoundException : HelloServlet at org. apache.catalina.loader.WebappClassLoader.loadClass