JavaWeb学习:servlet
什么是servlet:
Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
关于在idea上创建servlet:
图1
大体步骤如图所示:
第一步一定要导入servlet依赖坐标
第二步实现servlet类时一定要继承servlet类(或HttpServlet类)并且实现接口中的方法。
第三步,可以用web.xml文件或者注解的方式进行配置,给一个访问的url。
第四步,启动tomcat。
图2
关于访问servlet的url理解:
8080之前都是用来定位tomcat的,找到tomcat,8080是对应的端口。
web-demo是定义idea中项目的部分。
demo01则是定位项目中的指定servlet的位置。
servlet都是由web服务器进行创建和调用,并且上一步提及过,servlet是要继承类的,要重现其中的方法。所以每个servlet中都一定有service方法。
图3
关于servlet的生命周期,主要要理解,每个方法的执行次数与执行时间。
可以将servlet的执行过程类比人从出生到死亡。
init(诞生)与destroy(死亡)都只能执行一次,而中间的service(工作)状态则可以完成多次任务,不限制次数。
以及在配置时的loadOnStartup参数,可以控制服务器启动调用init方法的时间。
图4
关于servlet需要继承的接口,我们一般都会采用http协议,因此在多数需要实现servlet类的时候,我们都会继承HttpServlet类。
图5
图5为我们展示了在需要获取请求方式时(post/get)时可以调用的函数方法。
图6
图6所示HttpServlrt类实现的方法如上述比周所示,需要注意的是,当我们不确定是post还是get方法时,可以在doPost方法里面调用doGet方法。
图7
关于Servlrt urlPattern的配置方法,简单的可以描述为:*不能出现在中间,出现在中间会报错;
以及用户不要配置“/”或“/*”方法,因为会覆盖掉原来默认的方法,在原来的情况下,是可以直接访问静态页面的,但是如果用户配置了“/”或“/*”方法的话,静态页面就访问不了了。
图8
只要是在3.0版本之后,都支持注解配置,通常开发中也是多数时候使用注解配置来进行开发。
JavaWeb学习:servlet相关推荐
- html与java接口,JavaWeb学习——Servlet相关的接口和类
JavaWeb学习--Servlet相关的接口和类 摘要:本文主要学习了Servlet相关的接口和类. Servlet的接口和类 三种方式 实现Servlet有三种方式: 实现javax.servle ...
- javaweb学习总结(六)——Servlet开发(二)
一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...
- javaweb学习总结(六):Servlet开发(二)
一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...
- 【转载】 javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册 - 孤傲苍狼 - 博 http://www.cnblogs.com/xdp-gacl/
javaweb学习总结(二十二)--基于Servlet+JSP+JavaBean开发模式的用户登录注册 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+Ja ...
- JavaWeb学习笔记(十)--HttpServletRequest
1. HttpServletRequest简介 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中 2. Ht ...
- javaweb学习总结(四)——Http协议
javaweb学习总结(四)--Http协议 一.什么是HTTP协议 HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用 ...
- 转载:javaweb学习总结(二十三)——jsp自定义标签开发入门
javaweb学习总结(二十三)--jsp自定义标签开发入门 转自:http://www.cnblogs.com/xdp-gacl/p/3916734.html 一.自定义标签的作用 自定义标签主要用 ...
- javaweb学习总结(三十九)——数据库连接池
javaweb学习总结(三十九)--数据库连接池 一.应用程序直接获取数据库连接的缺点 用户每次请求都需要向数据库获得链接,而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长.假设网站一天10 ...
- JavaWeb学习之路——SSM框架之SpringMVC(八)
SpringMVC参数传递:把内容写到方法(HandlerMethod)参数中,SpringMVC只要有这个内容,则会注入,在这里使用注解的方式来传递参数 前提使用springmvc注解功能,相应配置 ...
- Javaweb学习路线(自学规划)
一.Java学习路线 第一阶段:Java基础,包括java语法,面向对象特征,常见API,集合框架; (基础) 第二阶段:java界面编程,包括AWT,事件机制,SWING,(不常用)这个部分也可以跳 ...
最新文章
- Hibernate 和快照
- PowerShell-Exchange:统计每天邮件收发
- 黑马在线教育项目---5、使用填充器创建数据库数据
- MySql 数据库 - 安装时提示缺失VCRUNTIME140_1.dll文件导致的无法启动此程序解决方法,vc++2015-2019运行库集合包获取
- SecureCRT登陆Centos 6.4乱码问题
- VMware中的三种网络模式-----Host-only模式
- python的datetime.strptime_Python strptime()和时区?
- java 运行500错误_MyEclipse运行JAVA Web时出现HTTP Status 500错误
- 【转】解决IE8无法加载webplayer流媒体播放器的方法
- Canny边缘检测原理
- md5修改器v1.0
- 音乐自动播放html代码大全,网页HTML音乐播放器代码大全
- 如何在excel表格中查找重复值
- c语言正弦波程序_DAC0832的波形信号发生器Proteus仿真设计,正弦波、三角波、方波和锯齿波...
- DirectAdmin教程-初级
- 寻找250(非数组求法)
- 2020支付行业七大预测:聚合支付牌照有望正式落地
- 数据挖掘中的分类与预测
- Solidworks2020中零件图的材质无法正常显示的问题(只有在选中零件时材质才能正常显示)
- 换位思考——连接的开始