如何成功运行一个最简单的servlet

好吧,又是一个简单到不能再简单的问题~~

由于各种原因,这次就不上图了,直接步骤和代码了。

1、前期准备

jdk、tomcat、EditPlus(eclipse)安装成功并且设置好环境变量。

2、由于jdk(JavaSE)是无法直接编译servlet的,所以需要将tomcat安装目录\lib\servlet-api.jar复制到java安装目录\lib下,并且为了确保没有问题,可以在系统变量CLASSPATH后面加上“;%CATALINA_HOME%\lib\servlet-api.jar”(前提是CATALINA_HOME要设置好啊。。)

3、创建文件结构

我在tomcat的webapps目录下新建了一个my文件夹,下面又新增了src文件夹(放所有的java文件包括servlet)、WEB-INF文件夹(放所有的classes类、jar包、静态页面和web.xml),WEB-INF文件夹里新建两个文件夹:classes和lib。

4、现在可以写代码了,在src文件夹下新建文件夹servlet,在servlet文件夹内新建一个java文件,命名为HelloWorldServlet.java。

 1 package servlet;
 2
 3 //打包,注意这个地方,待会在配置web.xml时会用到
 4
 5 import javax.servlet.http.*;
 6 import javax.servlet.*;
 7 import java.io.*;
 8
 9 //以上三个导入语句都是servlet要用到的,尤其是前两个
10
11 public class HelloWorldServlet extends HttpServlet{
12
13     protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws IOException,ServletException{
14
15         PrintWriter out = resp.getWriter();         //打印流,自动flush,不会抛出异常
16         out.println("<html><head><title>Hello</title></head><body>HelloWorld!</body></html>");
17     
18         //作用是输出HelloWorld!字段
19
20         out.flush();
21
22         //flush()    清空缓冲区的数据
23
24         out.close();
25
26         //关闭
27
28     }
29 }
30         

因为我用的是EditPlus,所以就手动来编译一下吧(实话说一个两个都也没啥,多了我也不知道怎么办比较好。。。)

运行——cmd——cd D:\apache-tomcat-8.0.12\webapps\my\src\servlet(这个路径根据实际情况可以改)——javac HelloWorldServlet.java

如果出现乱码的问题,请参见我的上一篇文章《解决java文件编码和windows7系统(中文版)默认编码冲突所导致的乱码情况

成功编译之后,将生成的class文件复制到WEB-INF文件夹的classes文件夹中。注意,因为HelloWorldServlet.java的位置是在servlet文件夹内,所以在这里也要如法炮制,在classes文件夹里也要新建servlet文件夹,并将HelloWorldServlet.class文件放入其中。

5、别以为这就完事了。。配置web.xml同样是件大事。如果没有配置这个,100%报404(我才不会告诉你我蛋疼了好长时间)

如果你用的是eclipse或者其他的工具的话,可以在建立项目时就选择创建默认的web.xml(内面的内容非常少,只有一些欢迎的页面设置)。我是用的tomcat里example项目中改的,大家可以参考:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2
 3 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"       version="3.1"   metadata-complete="true">
 4
 5     <servlet>
 6         <servlet-name>Hello</servlet-name>
 7         <servlet-class>servlet.HelloWorldServlet</servlet-class>
 8     </servlet>
 9     <servlet-mapping>
10         <servlet-name>Hello</servlet-name>
11         <url-pattern>/HelloWorldServlet</url-pattern>
12     </servlet-mapping>
13 </web-app>
14         

加粗的内容是针对上文中写的servlet的设置。大家可以如法炮制(实话说我也讲不太明白,大家自行百度吧)。。。

6、最后,启动tomcat,输入http://localhost:8080/my/HelloWorldServlet ,搞定。

时间: 2024-10-07 21:09:25

如何成功运行一个最简单的servlet的相关文章

javaWeb之写一个最简单的servlet

1. 创建一个类servletTest2 继承HttpServlet类. public class servletTest2 extends HttpServlet { public servletTest2(){ super(); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setCon

一个简单的Servlet

1.Servlet开发选项: 为了创建Servlet,需要访问Servlet容器(服务器).两个常用的服务器分别是 Glassfish 和 Tomcat .这里的Servlet开发和部署都是基于Tomcat ,并且只使用命令行工具. 2.使用Tomcat: Tomcat包含了创建和测试Servlet所需要的类库.文档以及运行时支持.Tomcat有多个不同版本,从官网下载合适的版本即可http://tomcat.apache.org/.下载后解压,配置环境变量(64位Windows环境为例): 2

IDEA新建MavenWeb项目并通过Tomcat运行HelloWorld以及运行简单的Servlet类

IDEA新建MavenWeb项目并通过Tomcat运行HelloWorld以及运行简单的Servlet类 由于在IDEA中新建Maven项目配置web中遇到很多坑,目前在这边记录一下 一.运行环境: IntelliJ IDEA Version 2018.3.4 (IDEA2018)  . JDK1.8 二.运行中所需安装包以及最终的项目 项目ZIP 链接:https://pan.baidu.com/s/1N39STOehDV1s6bAQytNJMA 提取码:dp74 Tomcat 链接:http

在cmd下编译一个简单的servlet时出现程序包javax.servlet不存在

由于servlet和JSP不是Java平台JavaSE(标准版)的一部分,而是Java EE(企业版)的一部分,因此,必须告知编译器servlet的位置. 解决“软件包 javax.servlet不存在”错误的方法: 1. 搜索servlet-api.jar 所在文件夹:E:\TomcatSetup\lib 2. 将环境变量CLASSPATH的值设置为: .;E:\TomcatSetup\lib\servlet-api.jar 3. 除了设置classpath以及servlet-api.jar外

Servlet复习1: 一个简单的Servlet的使用

Servlet学习 1. Servlet与JSP的关系 2. Servlet的声明周期 3. 一个简单的Servlet的使用方法 什么是Servlet? 什么又是JSP? 继承了javax.servlet的一些类的程序 , 已经具有了Servlet的特征 但是Servlet的可视性不是太好, JSP可以弥补这一点 , jsp是Java Server Pagers , 是一种使用java作为脚本的语言, 在web服务器中可以转化为Servlet , 在传统的HTML网页中使用<% java语言 %

Tomcat学习笔记(二)—— 一个简单的Servlet容器

1.简介:Servlet编程是通过javax.Servlet和javax.servlet.http这两个包的类和接口实现的,其中javax.servlet.Servlet接口至关重要,所有的Servlet必须实现该接口或者继承实现了该接口的类. 2.Servlet接口有5个方法: public void init(ServletConfig config) throws ServletException; public void service(ServletRequest request, S

怎样拥有一个网站?从“域名注册”到“网站成功运行”全程概况总结!

根据个人多年建站经验,总结出从"域名注册"到"网站成功运行"的建站说明,供广大朋友学习,希望大家少走弯路! 大概步骤如下: 1.注册域名: 2.开通网站主机(空间): 3.网站域名解析和网站主机绑定: 4.选择建站方式: 5.配置网站. 一.注册域名: 不管是企业还是个人,如何拥有一个自己的网站呢? 首先我们要做的就是为自己的网站起一个域名,说白了就是网址,你希望别人通过输入什么网址能打开你的网站?提示大家,尽量不要用那些免费的域名,不光难记,而且可能会出现各种问题

how tomcat works 读书笔记(二)----------一个简单的servlet容器

app1 (建议读者在看本章之前,先看how tomcat works 读书笔记(一)----------一个简单的web服务器 http://blog.csdn.net/dlf123321/article/details/39378157) 回顾我们上一章,我们开发了一个最最简单的web服务器,它可以使用户访问服务器内的静态资源.当然这是远远不够的,在这一节里,我们就试着让服务器在能相应静态资源的基础上继续支持servlet. servlet接口 javax.servlet.Servlet接口

很多时候运行tomcat 的时候总是会提示tomcat 的端口被占用 但是任务管理器里面还找不到是哪个端口被占用了 因此很多人就重新配置tomcat 或者去修改tomcat的端口号 ,其实这么做太麻烦了 ,小弟在这里告诉你一个非常简单的方法。 1.在开始菜单中选择运行 然后输入cmd 进入DOS界面。显示如下: 2.在Dos窗口中输入netstat -ano|findst

很多时候运行tomcat 的时候总是会提示tomcat 的端口被占用 但是任务管理器里面还找不到是哪个端口被占用了 因此很多人就重新配置tomcat  或者去修改tomcat的端口号 ,其实这么做太麻烦了 ,小弟在这里告诉你一个非常简单的方法. 1.在开始菜单中选择运行  然后输入cmd  进入DOS界面.显示如下: 2.在Dos窗口中输入netstat   -ano|findstr  8080(注意的 我的Tomcat 的断口号 是8080 你的断口号是多少就写多少) 输入完成后回车 会弹出下