第二天:tomcat体系结构和第一个Servlet
1、 打war包
2、 Tomcat体系再说明:
问题:如何去配置默认主机???
3、tomcat和servlet在网络中的位置
4、 servlet快速入门案例
1)、开发servlet的三种方法
a、实现servlet接口
B、通过继承GenericServlet
C、通过继承HttpServlet
需求:请使用实现接口的方式来实现一个Servlet,要求该Servlet可以显示Hello world!!!,同时显示当前的时间。
步骤:
A、
先建立web应用
B、
在该web应用下建立WEB-INF目录(并在下面建立一个web.xml配置文件),lib目录,classes目录(我们的Servlet就在该目录下开发)
C、
开发MyFIrst
MyFirst.java文件
package com.lyw;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*; public class MyFirst implements Servlet
{
//该函数用于初始化Servlet,即就是把该Servlet装载到内存中,该函数只会被调用一次
public void init(ServletConfig config)throws ServletException{ }
//该函数是得到ServletConfig对象
public ServletConfig getServletConfig(){
return null;
}
//该函数是服务函数,我们的业务逻辑代码就是写在这儿的,该函数每次请求都会被调用
public void service(ServletRequest req,ServletResponse res)throws ServletException,java.io.IOException {
System.out.print("hello world!!!"+new java.util.Date());
res.getWriter().println("hello world!!!"+new java.util.Date());
}
//该函数是得到Servlet的一些配置信息
public java.lang.String getServletInfo(){
return null;
}
//该函数是销毁该Servlet,从内存中清除,该函数被调用一次
public void destroy(){ }
}
D、
这时候根据Servlet的规范,我们还需要部署该Servlet,在web.xml文件中部署。
web.xml文件:(部署web应用)
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app 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"
version="3.0"
metadata-complete="true">
<!--根据Servlet规范需要将Servlet部署到web.xml文件下,该文件可以从examples下拷贝-->
<servlet>
<!--servlet-name是给该Servlet取个名字,该名字可以自己去定义,但最好使用该Servlet的名字,这样方便后期的查找-->
<servlet-name>Myfirst</servlet-name>
<!--servlet-class是用来指定该Servlet放到哪个包下面的:包.类名(类名不要扩展名)-->
<servlet-class>com.lyw.MyFirst</servlet-class>
</servlet> <!-- Define the Manager Servlet Mapping -->
<!--Servlet的映射-->
<servlet-mapping>
<!--这个Servlet的名字要和上面的名字一样才可以匹配的上-->
<servlet-name>Myfirst</servlet-name>
<!--url-pattern这里就是访问该Servlet的资源名部分-->
<url-pattern>/helloworld</url-pattern>
</servlet-mapping> </web-app>
5、404错误可能出现的问题是???
A、未部署Web应用(即没有配置web.xml文件)
B、URL输入错误(即我们在地址栏中)
c、web应用目录放置错误,检查下自己的虚拟目录有没有问题
第二天:tomcat体系结构和第一个Servlet的更多相关文章
- Tomcat的部署+第一个Servlet
Tomcat部署 1.下载tomcat,添加到eclipse 2.配置环境变量(path) 3.win+r,输入Startup(如果没用,就管理员启动命令) 或者找到tomcat安装包,在bin目录找 ...
- 对于Servlet、Servlet容器以及一个Servlet容器-Tomcat
Servlet.Servlet容器等内容讲解 转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的 ...
- MyEclipse第一个Servlet程序 --解决Win7系统下MyEclipse与Tomcat连接问题
前言 本文旨在帮助学习java web开发的人员,熟悉环境,在Win7系统下运行自己的第一个Servlet程序,因为有时候配置不当或系统原因可能会运行不成功,这给初学者带来了一定烦恼,我也是为此烦恼过 ...
- how tomcat works 札记(两)----------一个简单的servlet集装箱
app1 (看着眼前这章建议读者,看how tomcat works 札记(一个)----------一个简单的webserver http://blog.csdn.net/dlf123321/art ...
- 用java写一个servlet,可以将放在tomcat项目根目录下的文件进行下载
用java写一个servlet,可以将放在tomcat项目根目录下的文件进行下载,将一个完整的项目进行展示,主要有以下几个部分: 1.servlet部分 Export 2.工具类:TxtFileU ...
- Tomcat是一个Servlet容器?
"Tomcat是一个Servlet容器",这句话对于2019年的程序员应该是耳熟能详的. 单纯的思考一下这句话,我们可以抽象出来这么一段代码: class Tomcat { Lis ...
- 部署第一个servlet应用到tomcat上
部署第一个servlet应用到tomcat上 搭建环境 eclipse的EE版本 eclipse官网 创建一个java的应用程序 1.File->new java project 导入servl ...
- Servlet学习笔记(1)--第一个servlet&&三种状态对象(cookie,session,application)&&Servlet的生命周期
servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神 ...
- 【Java框架型项目从入门到装逼】第四节 - 编写第一个Servlet程序
在开始这一节之前呢,我们还需要把Tomcat配置到Eclipse中,配置的方式很简单,打开Eclipse,Window,Preferences,进入到这个页面: 将Tomcat的安装目录配置到Ecli ...
随机推荐
- swoole帮助文档
入门指引 [编辑本页] Swoole虽然是标准的PHP扩展,实际上与普通的扩展不同.普通的扩展只是提供一个库函数.而swoole扩展在运行后会接管PHP的控制权,进入事件循环.当IO事件发生后,swo ...
- JavaScript的DOM操作(节点操作)
创建节点createElement()var node = document.createElement(“div”);没什么可说的,创建一个元素节点,但注意,这个节点不会被自动添加到文档(docum ...
- hdu2665 主席树(可持久化线段树)
题意:给定一个数组,每次查询第l到r区间的第k大值 解法嘛,当然是主席树,主席树即可持久化线段树,什么叫可持久化呢,就是指能够访问历史版本的数据结构,那么对于某些只能离线处理的题目强制在线之后 ,可以 ...
- UnityGUI扩展实例:图片挖洞效果 Mask的反向实现
转载自 https://www.taidous.com/forum.php?mod=viewthread&fid=211&tid=55259 我想大家在用uGUI做界面时,可能经常会碰 ...
- Centos 7 安装 Python3.7
目录 下载Python Python安装 遇到问题 错误: configure: error: no acceptable C compiler found in $PATH 错误: can't de ...
- loj 6083.「美团 CodeM 资格赛」数码
题目: 给定两个整数\(l\)和\(r\),对于任意\(x\),满足\(l\leq x\leq r\),把\(x\)所有约数写下来. 对于每个写下来的数,只保留最高位的那个数码.求\([1,9]\)中 ...
- GO语言heap剖析及利用heap实现优先级队列
GO语言heap剖析 本节内容 heap使用 heap提供的方法 heap源码剖析 利用heap实现优先级队列 1. heap使用 在go语言的标准库container中,实现了三中数据类型:heap ...
- webpack 插件
插件可以完成更多 loader 不能完成的功能. 插件的使用一般是在 webpack 的配置信息 plugins 选项中指定. Webpack 本身内置了一些常用的插件,还可以通过 npm 安装第三方 ...
- 推荐几本WinCE 6程序开发的书
因为学校期中考试和课程设计的原因,winCE6的项目开发耽误了一个多月的时间,现在学校没什么事情了,公司这边杂事也差不多办完了,可以专心的搞开发了,同时这也成了我的毕业设计,我不得不上心喽. 今天在卓 ...
- 释放Windows C盘空间 -- 虚拟内存和休眠文件
本文由Suzzz原创,发布于 http://www.cnblogs.com/Suzzz/p/4111718.html ,转载请保留此声明. 项目组有一Windows工作站, 由于需要使用Kinect最 ...