tomcat 部署一个简单的 Java Servlet

    最近接触了 Java Servlet,在这里写下笔记和大家分享。菜鸟一个,有不正确的地方,请各位指正交流。

    Java Servlet 是不能单独运行的,它像是一个组件,得放到 web 容器才能响应用户的请求。整个过程是这样的,用户发起请求,web 容器接收了请求,根据配置然后分装一个对象,调用我们写的 Java Servlet 类。Tomcat 就是一个 web 容器。

    

    接下来要做的分为三步:

    1. 写一个类来处理请求,然后把这个类编译成字节码,也就是 class 文件;

    2. 在 tomcat 的 webapps 目录新建一个 subdir 文件夹,下面有 WEB-INF 文件夹,WEB-INF 下面有 classes 文件夹 和 web.xml 文件。把第一步生成的 class 文件放在 classes 目录下面,注意,如果有包名,需要在 classes 下面建立相应的包名然后再把上面生成的 class 文件放在该包下面,web.xml 的内容下面会给出;

    3. 现在就可以发起请求了;


第一步:

//HelloServlet.java
package com.phiau.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloServlet extends HttpServlet {
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html");
		response.getWriter().println("you are here!!!!!!");
		response.getWriter().flush();
		response.getWriter().close();
	}
}
然后用 Javac 编译,在命令行执行
javac -cp E:\apache-tomcat-6.0.20\lib\servlet-api.jar HelloServlet.java

 这个就会生成 HelloServlet.class 文件


第二步:

    在 E:\apache-tomcat-6.0.20\webapps 下面创建 subdir 目录,并创建 classes 文件夹,把上面生成的 class 文件放到 E:\apache-tomcat-6.0.20\webapps\subdir\WEB-INF\classes\com\phiau\servlet 目录下面。

    然后在 subdir 目录下面配置 web.xml 文件,web.xml 这个是配置文件,最常见的作用是描述了 url 和 servlet 的映射

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"  xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
	<display-name>platform-auto-package-internal</display-name>
	
    <servlet>
        <servlet-name>helloservlet</servlet-name>
        <servlet-class>com.phiau.servlet.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>helloservlet</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
</web-app>
 上面定义了一个描述了一个 servlet,标示是 helloservlet,对应的类是  
com.phiau.servlet.HelloServlet,然后指定了 url 的匹配规则 

我本地的目录结构是


第三步:

因为上面的类处理的是 get 请求,那么现在就可以在浏览器或者其他地方发起 get 请求了。操作之前,记得得启动 tomcat,我本地的是 E:\apache-tomcat-6.0.20\bin\startup.bat

然后在浏览器输入 http://localhost:8080/subdir/k 就可以了,后面 k 只是随便的字符,任意字符都可以,本例子,如无意外,浏览器会显示 you are here!!!!!!



    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值