servlete基础
1. 使用servlet需要继承HttpServlet
Servlet 生命周期
Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程:
- Servlet 通过调用 init () 方法进行初始化。
- Servlet 调用 service() 方法来处理客户端的请求。(用来接收客户端的请求并且分辨属于何种类型的请求get或者post等,通常我们无需自己写,父类已经帮我们做好)
- Servlet 通过调用 destroy() 方法终止(结束)。
- 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。
- //查看 http://www.runoob.com/servlet/servlet-life-cycle.html servlet的具体教程
servlet是早期进行Javaweb的编程 在后来的各种框架出来后(struts,springmvc),也就关注的少了,但是如今的框架究其底层还是根据servlet实现的,可以说是深度的封装。
基于servlet实现的一个简单web项目 参照:https://blog.csdn.net/maple082/article/details/52904123 实现增删改查
使用servlet需要在web.xml中进行映射配置
servlet-mapping是用于servlet的路径映射配置,其中url-pattern为指定的映射拦截路径。
在SpringMVC中,url-pattern指定了spring需要拦截派发的路径。
url-pattern有5种配置模式:
(1)/xxx:完全匹配/xxx的路径
(2)/xxx/*:匹配以/xxx开头的路径,请求中必须包含xxx。
(3)/*:匹配/下的所有路径,请求可以进入到action或controller,但是转发jsp时再次被拦截,不能访问jsp界面。
(4).xx:匹配以xx结尾的路径,所有请求必须以.xx结尾,但不会影响访问静态文件。
(5)/:默认模式,未被匹配的路径都将映射到刺servlet,对jpg,js,css等静态文件也将被拦截,不能访问。
该映射路径是 在去掉上下文路径的剩余全路径 即去掉:request.getContextPath() 该路径为工程的名字
例如:


该form提交 url-pattern是匹配不到该url的
所以修改为:
<servlet-mapping>
<servlet-name>servlet2</servlet-name>
<url-pattern>/Login/login</url-pattern>
</servlet-mapping>
servlet修改为:

这种方法名传递方式是基URI的 但是也可以用上面的那个servlet项目 使用 ( ?methodName=?) 该方式进行
关于servlet的url-pattern规则也可查看: https://www.cnblogs.com/canger/p/6084846.html
servlete基础的更多相关文章
- java基础集合经典训练题
第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...
- node-webkit 环境搭建与基础demo
首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Golang, 以17个简短代码片段,切底弄懂 channel 基础
(原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- HTTPS 互联网世界的安全基础
近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...
- Swift与C#的基础语法比较
背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...
- .NetCore MVC中的路由(1)路由配置基础
.NetCore MVC中的路由(1)路由配置基础 0x00 路由在MVC中起到的作用 前段时间一直忙于别的事情,终于搞定了继续学习.NetCore.这次学习的主题是MVC中的路由.路由是所有MVC框 ...
- .NET基础拾遗(5)多线程开发基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...
随机推荐
- 对弈的C++学习笔记
2018-07-11上传 一:从C到C++ 1.C++新类型 bool 判断真假 占用一个字节 if(条件) 真1或者假 0 bool 类型的取值 true false ...
- java基础 易忘易混点复习1
原码 反码 补码 原码 正数的原码最高位是0 负数的原码最高位是1 例如:+7 0 0000111 -7 1 0000111 反码 正数的反码与原码相同 负数的反码相比原码 符号位不变,数值位取反 例 ...
- xss过滤代码
#!/usr/bin/env python # -*- coding:utf-8 -*- from bs4 import BeautifulSoup class XSSFilter(object): ...
- deepfake-faceswap第一篇论文-2016摘要
核心目标:给定一个人的单张图片A,另一个人的单张图片B,在保持姿势,面部表情,视线方向,发型和光照不变的条件下,将A图片中的人物换成B图片中的人物.2016年,文章[1]实现了这个目标: 德国的蒂宾根 ...
- 介质共享型局域网中的介质访问控制(MAC)协议需要具体解决的3个问题,CSMA/CD介质访问控制的基本思想
1,在某一时刻,那个节点可以发送数据 2,发送时是否会出现冲突 3,出现冲突时如何处理 CSMA/CD介质访问控制的基本思想:先监听,再发送.边发送,边监听,如发生冲突,则等待一段时间后再次发送
- SHELL输出带颜色字体
输出特效格式控制:\033[0m 关闭所有属性 \033[1m 设置高亮度 \03[4m 下划线 \033[5m 闪烁 \033[7m 反显 \033[8m 消隐 \ ...
- ng2 配置端口号
ng2 默认端口号4200 若要配置,用两种方法 (1)可以使用以下命令 ng server --port 4201 (2)找到node_modules/angular-cli/lib/confi ...
- caog
import pandas as pd#匹配可发库存1. import oslst=os.listdir(r'E:\每日必做\琪琪小象库存')lst1=[]for i in lst: if i[:2] ...
- 今天写代码遇到了一个BUG
在我们日常写注释是需要注意,在有返回值的里面不要用以下方式注释,不然不会报错,运行状态码返回也是200,但就不是想要的结果. 下面举个例子 return { 'token':token, 'user_ ...
- SAMTOOLS使用 SAM BAM文件处理
[怪毛匠子 整理] samtools学习及使用范例,以及官方文档详解 #第一步:把sam文件转换成bam文件,我们得到map.bam文件 system"samtools view -bS m ...