第二天: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 ...
随机推荐
- linux服务器应用NTP配置时间同步
linux服务器应用NTP配置时间同步 • 为什么建议使用ntpd而不是ntpdate? #####原因很简单,ntpd是步进式的逐渐调整时间,而ntpdate是断点更新,比如现在服务器时间是9.18 ...
- Sublime Text:学习资源篇
官网 http://www.sublimetext.com/ 插件 https://packagecontrol.io 教程 Sublime Text 全程指南 Sublime Text 2 入门及技 ...
- 基于鸿洋博客自定于View实现的android音量调节控件
1.在values建立attrs.xml,写出你需要的属性: <?xml version="1.0" encoding="utf-8"?> < ...
- nyoj-67-三角形面积(S=(1/2)*(x1y2+x2y3+x3y1-x1y3-x2y1-x3y2))
题目链接 /* Name:nyoj-67-三角形面积 Copyright: Author: Date: 2018/4/26 16:44:47 Description: 三角形的三个顶点坐标求其面积的公 ...
- python中读写LMDB数据库
LMDB的全称是Lightning Memory-Mapped Database(快如闪电的内存映射数据库),它的文件结构简单,包含一个数据文件和一个锁文件: LMDB文件可以同时由多个进程打开,具有 ...
- OpenCV-Python在图片上输出中文
OpenCV中在图片上输出中文一般需要借助FreeType库实现.FreeType库是一个完全免费(开源)的.高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件.但使用FreeType ...
- php实现pdf导出和打印功能。
所用插件:TCODF //导出pdf public function export_pdf($order_sn){ require_once(FCPATH .'../sha ...
- 团队开发中Git冲突解决
正常来说我们团队协作开发过程中,冲突是常有的事,下面介绍下本人在开发中的解决办法. 冲突的主要原因就是由于我们开发人员在分支的同一位置写入了不一样的代码,然后合并到主干上导致我们冲突. 方法: 当冲突 ...
- walle代码发布系统配置
walle Walle 一个web部署系统工具,配置简单.功能完善.界面流畅.开箱即用! 支持git.svn版本管理,支持各种web代码发布, PHP,Python,JAVA等代码的发布.回滚,可以通 ...
- docker 摆渡镜像脚本
#!/bin/bash if [ $# != 1 ];then echo "Param error";exit; fi DOCKER_NAME=$1 IMAGE_TAG=${DOC ...