在eclipse中配置Tomcat并实现第一个servlet程序_eclipse下新建一个web工程,写两个servlet程序,分别继承父类和实现接口,并用浏览器-程序员宅基地

技术标签: 笔记  java  tomcat  JavaWeb  eclipse  


任务目标

eclipse作为一款强大的软件集成开发工具,对web服务器提供了非常好的支持,他可以集成各种web服务器,方便程序员进行web开发。通过本任务,读者将学会如何在eclipse工具中配置Tomcat。并实现一个简单的servlet程序。

一、eclipse中配置Tomcat

实现步骤

1.下载并成功安装Eclipse和Tomcat
2.打开Eclipse,单击“window”菜单,选择下方的“Preferences” 选项,此时会弹出一个“Preferences” 窗口,在该窗口中单击左边菜单中的“servlet”选项,在展开的菜单中选择最后一项“Runtime Environments”,这时窗口右侧会出现“Server Runtime Environments”选项。单击“add”按钮。
在这里插入图片描述
在这里插入图片描述
3.此时会弹出一个“New Server Runtime Environment”窗口,该窗口显示了可在eclipse中配置各种服务器及其版本。由于需要配置的服务器版本是apache-tomcat-8.5.71,所以选择“Apache”,在展开的版本中选择“Apache Tomcat v8.5”选项。然后单击“next”执行下一步。
在这里插入图片描述
4.在弹出的窗口中单击“Browser”按钮,选择安装Tomcat服务器的目录(我的Tomcat服务器安装在E:\tomcat\apache-tomcat-8.5.71目录下),最后一次单击“Finish”→“OK”。
在这里插入图片描述
5.在eclipse中创建Tomcat服务器。单击eclipse下侧窗口的“Servers”选项卡标签,在该选项卡中可以看到一个“No servers are available. Click this link to create a new server…”的链接,单击这个链接,会弹出一个“New Server”窗口。
在这里插入图片描述
6.选择“Tomcat v8.5 server”选项,单击“finish”按钮完成Tomcat服务器的创建。此时,在“servers”选项卡中会出现一个“Tomcat v7.0 Server ai localhost”选项。
在这里插入图片描述
7.Tomcat服务器创建完毕后,就可以使用了。此时如果创建项目,并使用eclipse发布后,项目会发布但eclipse的.metadata文件夹中。为了方便查找发布后的项目目录,读者可以将项目直接发布到Tomcat中,这时就需要对server进行配置。

双击servers窗口内创建好的Tomcat服务器,在打开的“Overview”页面中,选择“Server Locations”选项中的“Use Tomcat installation”,并将“Deploy path”文本框内容修改为“webpapps”。
在这里插入图片描述
至此,就完成了Tomcat服务器的所有配置。上图所示的工具栏(或Servers 窗口)中的按钮,即可启动Tomcat服务器。为了检测Tomcat服务器是否正常启动,在浏览器地址栏中输入“http://localhost:8080”访问 Tomcat首页,如果在浏览器中可以正常显示Tomcat首页页面,则说明Tomcat在Eclipse中配置成功了。
需要注意的是,如果采用默认配置启动Tomcat服务器,访问“http:/localhost:8080”时,浏览器页面会出现404 错误,这是Eclipse自身的原因所导致的,此错误对访问具体项目不会有任何影响,读者可不必理会。

二、实现一个servlet程序

为了帮读者快速学习servlet开发,接下来,分步骤的实现一个servlet程序,来演示其使用,具体如下:

1.创建servlet文件

1.由于直接实现servlet接口来编写servlet很不方便,需要实现很多方法。因此可以通过继承servlet接口的实现类javax.servlet.GenericServlet来实现。具体代码如下:

package cn.itcast.firstmyapp.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.GenericServlet;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class HelloWordServlet extends GenericServlet{
    

	@Override
	public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
    
		// 得到输出流PrinterWriter对象,Servlet使用输出流来产生相应
		System.out.println("接收了客户的请求-----------------2020080605023");
		PrintWriter pw = res.getWriter();
		// 使用输出流对象想客户端发送字符数据
		pw.print("HELLO WORLD DASHUJU2005 CHENGQI 2020080605023");
	}
}

2.查找servlet的JAR包

由于servlet程序是一个javaEE程序而不是javaSE程序,因此,所有的JAR文件都需要自己手动添加到CLASSPATH环境变量中。进入Tomcat安装目录下的lib目录,复制servlet-api.jar文件。
在这里插入图片描述

3.创建web.xml文件

进入目录下的WEB.INF。
在这里插入图片描述
编写web.xml文件,下面是配置代码。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>FirstServlet</display-name>
  <servlet>
  	<servlet-name>hello world</servlet-name>
  	<servlet-class>cn.itcast.firstmyapp.servlet.HelloWordServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>hello world</servlet-name>
  	<url-pattern>/hello</url-pattern>
  </servlet-mapping>
</web-app>

4.运行服务器,查看效果

启动Tomcat服务器,在浏览器中的地址栏中输入地址“http://localhost:8080/FirstServlet/hello”访问hello页面。

在这里插入图片描述
从上图可以看出,客户端可以正常访问Tomcat服务器的servlet程序。至此,第一servlet程序已经实现。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_53953493/article/details/120805809

智能推荐

Request body exceeded settings.DATA_UPLOAD_MAX_MEMORY_SIZE.-程序员宅基地

文章浏览阅读2.9k次,点赞2次,收藏3次。完整的报错日志:ERROR 2019-09-24 09:27:23,160 scheme:https path:/asset/api/interface/ method:POST data:<QueryDict: {}>Traceback (most recent call last): File "/code/asset_apps/main/views/error_Trace..._request body exceeded settings.data_upload_max_memory_size.

Fiddler 抓包下载 M3U8 视频_fiddler抓包,拿m3u8,然后n_m3u8dl-cli拉回来-程序员宅基地

文章浏览阅读8.6k次,点赞7次,收藏40次。本文以下载钉钉的直播回放视频为例,介绍如何下载 M3U8 视频。_fiddler抓包,拿m3u8,然后n_m3u8dl-cli拉回来

TAO使用指南 -- 编译ACE和TAO_vs2013编写tao-程序员宅基地

文章浏览阅读5.7k次。使用的环境是: WinXP Professional + MSVC SP5TAO完全支持Win32API,(包括Windows NT, Windows 2000, Windows 95/98/ME)VC5.0和VC6.0均可编译。一. Win32+VC6.0下编译和安装ACE和TAO将网上下载的TAO软件包解压缩到某个目录,在该目录下会有ACE_wrappers目录。请按照以下步骤来执行:_vs2013编写tao

osg示例程序解析2---osganimationeasemotion_inoutexpomotion-程序员宅基地

文章浏览阅读1.1k次。本文参考文章http://blog.csdn.net/yungis/article/details/8463077#include #include #include #include #include #include #include #include #include #include #include #include class Eas_inoutexpomotion

input type=hidden-程序员宅基地

文章浏览阅读207次。在web开发过程中,对于在页面存储但并不需要显示出来的值,我们通常使用&lt;input type="hidden" value="看你啦" /&gt;来存储。但是此input 虽然不可见但是在IE6、IE7仍然会占位(IE8没有不会),虽然不是什么大问题,但是可能会导致整个页面出现无故的空白区,而影响页面布局。我的解决办法是:&lt;div style="height:0px;w..._"input type=\"hidden"

Camunda 5、SpringBoot Camunda 流程发起、任务签收、办理与委托_camunda任务签收-程序员宅基地

文章浏览阅读3.3k次。一、Spring Boot 后台代码1、Controller 接口:WorkflowTaskControllerpackage com.fight.strive.sys.modules.camunda.controller;import com.fight.strive.sys.modules.camunda.dto.WorkflowFormData;import com.fight.strive.sys.modules.camunda.dto.WorkflowNodesDto;impor_camunda任务签收

随便推点

html5游戏加入计时器,html5倒计时插件制作圆形计时器代码-程序员宅基地

文章浏览阅读285次。特效描述:html5倒计时插件 圆形计时器代码。计时器代码结构1. 引入CSS2. 引入JS3. HTML代码jQuery计时器插件TimeCircles演示1演示1(默认+美化)演示2(带控制)离2014年1月1日还有(2014年1月1日已过)倒计时10秒后结束页面开始时计时$(function(){$('#someTimer1').TimeCircles({time : {Days: {sho..._html5 圆形倒计时

ECharts -堆叠柱状图_echart 堆叠柱状图-程序员宅基地

文章浏览阅读2.8k次。ECharts 教程 基础篇ECharts数据可视化实验室,解读适合使用场景官网项目简介:ECharts 是一款由百度前端技术部开发的,基于 Javascript 的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。涵盖各行业图表,满足各种需求。项目地址:https://gitee.com/echarts/echarts现在公司刚分配一个任务,需要用到 echarts堆叠柱状图处理缺陷报表问题,以前也没有接触过,所以一边学习ECharts官网上的中文API(http://_echart 堆叠柱状图

华为云计算FusionCompute环境部署实验之使用批量部署工具安装-程序员宅基地

文章浏览阅读3.4k次,点赞3次,收藏17次。本文由乾颐堂HCIE培训讲师姜帆老师提供一.环境介绍使用实验环境必须提前在中登记预约1. 实验拓扑2. 环境简介使用环境安装虚拟机通过服务器的BMC接口实现,电源控制 访问Console 光驱挂载服务器管理IP为10.1.25.121所在VLAN25VRM登录IP地址为10.1.25.120所在VLAN25软件安装所使用的虚拟机通过VLAN27给服务器提供PXE引导能力二..._实验0 实验平台环境(华为云程序设计环境部署)

做一个带时分秒的extjs 日期控件扩展-程序员宅基地

文章浏览阅读268次。本地下载原文链接虽说不喜欢做这种做XX内部管理系统的生活,虽说不喜欢extjs,但是工作就是工作,找些乐趣也好。也感谢恶魔主管给我时间去了解,去修改一些很细节的体验方面的东西。唉,算了他又不看,不拍马屁了···extjs没有日期加时分秒的时间控件,然而我们用到了,所以需要自己去找。我们用了extjs5,但是大部分的这种控件都是停留在extjs4的,4和5相差很多,都不是很..._extjs 日期组件显示时分秒

使用GridLayout布局时小心子控件的layout_width埋坑,导致宽度溢出且设置无效_grid布局部分失效图宽度失效-程序员宅基地

文章浏览阅读6.9k次。像设置页面、添加编辑页面,是比较适合用GridLayout和TableLayout布局。今天用GridLayout时,怎么都调整不了子控件的宽度。找了半天,原来是子控件的layout_width属性设置导致。将属性值由match_parent改成wrap_content,还要注意如果有多行,要将所有行该列的值都要修改。问题研究过程如下。1、使用GridLayout布局,添加基本的控件,页面的初始D..._grid布局部分失效图宽度失效

案例研究:使用英特尔GPA优化《剑侠情缘三》游戏的性能_1脳1 scissor rect-程序员宅基地

文章浏览阅读3.2k次。2009年09月28日 10:00郭胜(英特尔开发者关系部) 杨林(金山软件西山居游戏工作室)介绍游戏在集成显卡上的性能日益成为游戏开发者关注的一个重要问题。这主要是由于两方面的原因:一是集成显卡的功能日益增强,具有越来越强的3D图形处理能力,支持的3D游戏也越来越多【3】。其次随着个人移动平台(如笔记本电脑,上网本等)日益普及,低功耗、高性价比的集成显_1脳1 scissor rect