10.Servlet简单介绍
1.什么是Servlet
* Servlet是javaweb的三大组件之一,它属于动态资源。Servlet的作用是处理请求,服务器会把接收到的请求交给Servlet来处理,在Servlet种通常需要:
* 接受请求数据
* 处理请求
* 完成响应
* 例如客户端发出登入请求,或则输出注册请求,这些请求都应该有Servlet来完成处理,Servlet需要我们自己来编写,每个Servlet必须实现javax.servlet.Servlet接口
* Servlet的特性
* 单列:一个类只有一个对象;当然可能存在多个Servlet类
* 线程不安全,所以它的效率是高的
注意:Servlet类由我们自己来写,但是对象由服务器来创建,并且由服务器来调用相应的方法
2.实现Servlet的三种方式
* 实现 java.servlet.Servlet接口
* 继承 java.servlet.GenericServlet类
* 继承 java.servlet.http.HttpServlet类
通常我们会继承HttpServlet类来完成我们的Servlet
3.下面是实现java.servlet.Servlet接口,实现的几个方法,并对这几个方法简单的介绍
- package Servlet;
- import java.io.IOException;
- import javax.servlet.Servlet;
- import javax.servlet.ServletConfig;
- import javax.servlet.ServletException;
- import javax.servlet.ServletRequest;
- import javax.servlet.ServletResponse;
- public class Demo1 implements Servlet {
- /*
- * 它是生命周期方法
- * 它会在Servlet被销毁之前调用,并且只会调用一次
- * 这个方法一般不会用,如果用,这个方法会释放一些绑定的非内存资源(io流,数据库连接等等)
- */
- @Override
- public void destroy() {
- }
- @Override
- public ServletConfig getServletConfig() {
- return null;
- }
- /*
- * 获取Servlet的信息,这个方法几乎没用
- */
- @Override
- public String getServletInfo() {
- return null;
- }
- /*
- * 它是生命周期方法
- * 它会在Servlet对象创建之后马上执行,并且只执行一次
- */
- @Override
- public void init(ServletConfig servletconfig) throws ServletException {
- }
- /*
- * 它是生命周期方法
- * 它会被调用多次
- * 每次处理请求都会调用这个方法
- */
- @Override
- public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
- }
- }
4.如何让浏览器访问Servlet(这个需要在web.xml中对Servlet进行配置)
* 给Servle指定一个Servlet路径(让Servlet与一个路径绑定在一起)
* 浏览器访问Servlet路径
* 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"
version="3.0">- <servlet>
- <servlet-name>xxx</servlet-name>
- <servlet-class></servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>xxx</servlet-name>
- <url-pattern>/Demo1</url-pattern>
- </servlet-mapping>
- </web-app>
10.Servlet简单介绍的更多相关文章
- servlet简单介绍
什么是Servlet? servlet是一种Java编程语言类,用于扩展托管通过请求 - 响应编程模型访问的应用程序的服务器的功能.尽管servlet可以响应任何类型的请求,但它们通常用于扩展Web服 ...
- Spring进阶之路(10)-Advice简单介绍以及通过cglib生成AOP代理对象
Advice简单介绍 1. Before:在目标方法运行之前运行织入.假设Before的处理中没有进行特殊的处理.那么目标方法终于会运行,可是假设想要阻止目标方法运行时.能够通过抛出一个异常来实现.B ...
- J2EE的13个规范之(三) Servlet简单介绍
Servlet是一种server端脚本,它是一个特殊的Java类,继承自HttpServlet.开发中主要用于处理和响应client的请求. Servlet在容器中执行,事实上例的和销毁创建由容器进行 ...
- Servlet 简单介绍
来源于菜鸟教程http://www.runoob.com/servlet/servlet-intro.html Servlet 简介 Servlet 是什么? Servlet(Server Apple ...
- 以登录实例简单介绍Servlet使用
1.简单介绍 Java Servlet 是执行在 Web server或应用server上的程序,使用 Servlet.您能够收集来自网页表单的用户输入.呈现来自数据库或者其它源的记录.还能够动态创建 ...
- 【转载】JMeter学习(一)工具简单介绍
JMeter学习(一)工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静 ...
- JSF简单介绍
JSF简单介绍 一. 什么是 JSF: JavaServer Faces (JSF) 是一种用于构建 Web 应用程序的新标准 Java 框架.它提供了一种以组件为中心来开发 Java Web 用户界 ...
- 简单介绍Struts2
Struts2概述 Struts2虽然是Struts1的基础上发展起来的,但是实质上是以WebWork框架为核心,为传统的Struts1注入了WebWork的设计理念,统一了Struts1和WebWo ...
- JMeter学习工具简单介绍
JMeter学习工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态 ...
随机推荐
- 170821-关于SpringMVC的知识点
1.SpringMVC 概述以及优势 SpringMVC和Spring的关系: 软件开发的三层架构: web层[表示层.表现层]---->Service层---->Dao[DataBas ...
- 我眼中的CentOS 下 安全策略
安全策略 ===================== 1.每个人用自己名字的账户和密码登陆服务器(便于追踪用户操作,记录用户行为)2.只允许指定组(或用户)使用sudo命令(最好还要禁止root用户远 ...
- 问候 UEditor 的大爷
记录该日志的时间是2015年2月1日. 先给出 UEditor 项目的首页,它是一款由百度开发的开源富文本编辑器,关于它的介绍,大家可以查看百度百科. UEditor - 首页http://uedit ...
- Remote desktop manager共享账号
因为多个远程机器,是会用了域账号进行登录的.而域账号的密码,三个月之后,密码强制过期 添加一个新的entry,类型是Credential Entry,然后选择用户名/密码 在remote deskto ...
- MySQL 基准测试
这是<高性能 MySQL(第三版)>第二章的读书笔记. 基准测试(benchmark)是针对系统的压力测试,用于掌握系统行为或重新系统的某个状态.sysbench 是常用的 MySQL 基 ...
- HTML--JS 获取选择框信息
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue的概述
一.Vue的概述 Vue的开发模式 和 之前接触的jQuery.原生JSDOM操作是不同的,之前要想修改试图,首先找元素:在使用Vue时,专心把精力放在修改数据.DOM驱动 ---> 数据驱动. ...
- JS正则表达式校验金额
//任意正整数,正小数(小数位不超过2位) var isNum=/^(([1-9][0-9]*)|(([0]\.\d{1,2}|[1-9][0-9]*\.\d{1,2})))$/; var num = ...
- 解决BootstrapTable设置height属性后,表格不对齐的问题
解决BootstrapTable设置height属性后,表格不对齐的问题 2018年03月06日 09:56:54 nb7474 阅读数 5920 一般在使用BootstrapTable 插件 ...
- git报错-Initial commit Untracked files nothing added to commit but untracked ……
文章转自 https://www.jianshu.com/p/61c3db30d488 在目标执行命令 git stratus 报错 根据上面的文章,可以解决问题.不行的话,请留言. 感谢你的阅读