1 Servlet 简介
1 Servlet是sun公司提供的一门用于开发动态web资源的技术。用户若用Java技术开发一个动态web资源或者网页,需要完成以下2个步骤:
① 编写一个Java类,实现servlet接口
② 把开发好的Java类部署到web服务器中
2 Servlet - Java 小程序
① servlet 就是java程序(java 类)
② servlet 遵循servlet 开发规范
③ servlet是运行在服务器端
④ 功能强大,几乎可以完成网站所有的需求
⑤ 学习jsp的基础

3 Servlet 和 Tomcat 在网络中的位置

4 Servlet 快速入门案例
Servlet 开发有三种方式
① 实现servlet 接口
② 通过继承GenericServlet
③ 通过继承HttpServlet
① 实现servlet 接口
- 建立 web应用 TestWeb
- 在 TestWeb 下建立 WEB-INF/web.xml
- 在 WEB-INF 下建立 classes目录(servlet就要在这开发),建立lib目录
- 实现 Servlet接口来开发 Servelt 编写FirstServlet.java 类然后编译
import javax.servlet.*;
import javax.servlet.http.*; public class FirstServlet implements Servlet
{
//该函数用于初始化Servlet,把Servlet加载到内存,整个Servlet生命周期只会被调用一次
public void init(ServletConfig config) throws ServletException
{ } //获取ServletConfig对象
public ServletConfig getServletConfig()
{
return null;
} //该函数是服务函数,业务逻辑在这个函数实现
public void service(ServletRequest request, ServletResponse response)
{
PrintWriter out = response.getWriter(); out.println("Hello Servlet"+" "+ new java.util.Date());
} //返回Servlet配置信息
public String getServletInfo()
{
return null;
} //destroy()方法只会被调用一次,在 Servlet 生命周期结束时被调用
public void destroy()
{ }
}
根据 Servlet 规范部署 Servlet,打开WEB-INF/web.xml 添加如下代码部署 FirstServlet:
<!--Deploys the servlet to here -->
<servlet>
<!-- 自己定义 -->
<servlet-name>FirstServlet</servlet-name>
<!--FirstServlet所在项目的全路径(非物理路径,而是以项目WEB-INF\classes为根目录开始计算) -->
<servlet-class>FirstServlet</servlet-class>
</servlet> <servlet-mapping>
<!-- 与上面的servlet-name保持一致 -->
<servlet-name>FirstServlet</servlet-name>
<!-- 外部访问的url: 自己定义 -->
<url-pattern>/First</url-pattern>
</servlet-mapping>
重启Tomcat,浏览器访问FirstServlet,输入的地址为:http://localhost:8080/TestWeb/First,最后的First就是web.xml 里配置的,可以随意定义。

③ 继承HttpServlet
通过继承HttpServlet 开发 Servlet,需要重写 doGet,doPost方法。
首先编写一个Login.html 用于访问SecondServlet,Login.html必须放在 \LatinyWeb\WEB-INF下
<html>
<body>
<form action="/TestWeb/Second" method="post">
user:<input type="text" name="username"/>
<input type="submit" value="login"/>
</body>
</html>
然后编写SecondServlet.java 类,并在 web.xml配置外部访问的 url。
public class SecondServlet extends HttpServlet
{
//在HttpServlet中,设计者对post与get提交分别处理
//doGet()与doPost()调用Servlet的service方法
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
res.getWriter().println("This is doGet method!");
} protected void doPost(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException
{
res.getWriter().println("This is doPost method!");
res.getWriter().println(req.getParameter("username")+" visits.");
}
}
浏览器访问


5 Servlet生命周期

Servlet生命周期简述
① 当Servlet第一次被调用时,首先会触发init 函数,该函数会把servlet实例加载到内存,它在整个生命周期只会被调用一次。
② 然后Servlet 的 service函数会被调用,后台业务逻辑都在此实现
③ 第二次及以后调用Servlet,都是直接调用service函数。
④ 当web服务器停止或者reload时,tomcat关闭或者关机时,都会调用Servlet的destory函数销毁Servlet对象
Servlet 运行过程
Serlvet程序是由web服务器调用,web服务器接收到客户端请求后:
① Web服务器首先检查 Serlvet是否创建并且装载到内存,如果是则到第2步,如果未创建装载Serlvet 实例,则创建Servlet实例对象并且调用init函数装载该Servlet实例对象到内存中。
② 创建一个用于封装http请求消息的 HttpServletRequest 对象和一个代表http响应消息的 HttpServletResponse 对象,然后调用Servlet的service()方法并将请求和响应对象作为参数传递进去。
③ Tomcat重启或者关闭时;reload 该webapp时;关闭电脑时;都会调用destroy()方法。
1 Servlet 简介的更多相关文章
- Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解
Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...
- Servlet简介与Servlet和HttpServlet运行的流程
1.Servlet [1] Servlet简介 > Server + let > 意为:运行在服务器端的小程序. > Ser ...
- JavaEE:Servlet简介及ServletConfig、ServletContext
Servlet简介 1.Servlet是sun公司提供的一门用于开发动态web资源的技术*静态web资源:固定数据文件*动态web资源:通过程序动态生成数据文件2.Servlet技术基于Request ...
- Servlet简介及使用
javaweb学习总结(五)——Servlet开发(一) 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口 ...
- servlet简介及生命周期
Servlet 简介 Servlet 是什么? Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上 ...
- (一)Servlet简介
相关名词解释 HTML:Hyper Text Markup Language,超文本标记语言 HTTP:Hyper Text Transfer Protocol,超文本传输协议 URL:Uniform ...
- 【Servlet】(1)Servlet简介、Servlet底层原理、Servlet实现方式、Servlet生命周期
一.Servlet简介 1.Servlet定义: Servlet(Server Applet)是Java Servlet的简称,是为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交 ...
- 1.1(学习笔记)Servlet简介及一个简单的实例
一.Servlet简介 Servlet是使用Java语言编写的服务器端程序,可以生产动态的Web界面. 主要运行在服务器端,Servlet可以方便的处理客户端传来的HTTP请求,并返回一个响应. 二. ...
- Servlet学习笔记【1】--- 背景和基础知识(CGI、Web服务器发展史、Servlet简介、任务、继承结构)
本文主要讲Servlet的基础知识和背景知识. 1 CGI简介 CGI(Common Gateway Interface 公共网关接口)是WWW技术中最重要的技术之一,有着不可替代的重要地位.CGI是 ...
- 二:Servlet简介
一.Servlet简介 1.什么是Servlet Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求.响应给浏览器的动态资源.但servlet的实质就是 ...
随机推荐
- Maven中POM.XML详解
转自https://blog.csdn.net/jariwsz/article/details/19554137 我们先看一个简单的例子: <project xmlns="http:/ ...
- ES5-ES6-ES7_字符串与JOSN格式的数据相互转换以及深度克隆新对象
这篇文章主要来讲HTML5中的新方法:parse()把字符串转换成josn格式的数据和stringify()把josn格式的数据转换成字符串 eval()方法的回顾 eval()方法可以将任何字符串解 ...
- BSOJ 4062 -- 【清华集训2012】串珠子
Description 铭铭有n个十分漂亮的珠子和若干根颜色不同的绳子.现在铭铭想用绳子把所有的珠子连接成一个整体. 现在已知所有珠子互不相同,用整数1到n编号.对于第i个珠子和第j个珠子,可以选择不 ...
- Jenkins以root用户运行的方法
以centOS系统为例,记录下修改Jenkins以root用户运行的方法. 修改Jenkins配置文件 # 打开配置文件 vim /etc/sysconfig/jenkins # 修改$JENKINS ...
- ubuntu 在 Windows 下的安装
1. ubuntu 下载官网:https://www.ubuntu.com/index_kylin
- Raid卡介绍
raid0条带卷 最少需要一块硬盘 可以把所有硬盘的容量都叠加在一起,可以拥有很高的读写速度,硬盘空间也能得到很好的利用 但是只要其中一块硬盘换了,数据就全丢失了 raid1镜像卷 最少需要两块硬盘, ...
- robotframework使用中的一些注意事项
1.关于\的转义.使用\\ 2.关于字符串的合并 3.切换到iframe,切出iframe 4.对对象右键点击 5.对对象实现按键操作,在处理一些下拉对象时需要用到. 6.当元素定位十分困难的时候,需 ...
- jquery.$.ajax简单的使用
function LoadWFS() { var viewer = new Cesium.Viewer('cesiumContainer'); $.ajax({ url: "http://l ...
- 朱晔和你聊Spring系列S1E6:容易犯错的Spring AOP
阅读PDF版本 标题有点标题党了,这里说的容易犯错不是Spring AOP的错,是指使用的时候容易犯错.本文会以一些例子来展开讨论AOP的使用以及使用过程中容易出错的点. 几句话说清楚AOP 有关必要 ...
- Vs2017_创建项目引用Core2.2报错找不到
错误: 解决方案: 这个勾一定要画上