【代码审计】JAVAWeb基础第一个Servlet
JAVAWeb基础第一个Servlet
0x00 版权声明
JAVA基础系列是笔者学习@炼石星球的笔记,大部分文字描述取自星球内发布的教程文件,仅作学习。
0x01 什么是Servlet
Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
比如,我们打开一个网站有个注册功能,在填写完信息后,点击提交,所填写的信息传输到后端,根据所指向的路径,来匹配对应的servlet,专门用于处理注册流程。
从代码上来说,Servlets 是 Java 类,服务于 HTTP 请求并实现了 javax.servlet.Servlet接口。
0x02 Servlet生命周期
- init():初始化阶段,只被调用一次,也就是在第一次创建Servlet时被调用。
- service():服务阶段,主要处理来自客户端的请求,并可以根据HTTP请求类型来调用对应的方法,比如 doGet(),doPost(),doPut() 等等。
- doGet(),doPost():处理阶段,将主要代码逻辑写在此处。根据不同HTTP请求对应不同方法。
- destroy():毁灭阶段,该方法只会被调用一次,即在Servlet生命期结束时被调用
0x03 第一个Servlet
第一步,创建新的Maven项目,选择maven-archetype-webapp:
接着点击NEXT,设置项目名称,默认下一步等待自动创建:
第二步,在 pom.xml 中引入servlet的依赖
写在
1 | <dependency> |
第三步,下载tomcat
问题:Windows环境tomcat启动出现乱码,打开conf目录下的logging.properties文件,全文搜索UTF-8,替换为GBK,重新启动。
第四步,项目配置tomcat
点击右上角增加配置,选择tomcat server:
问题:选项没有tomcat server,确认版本是否为专业版,社区版无此配置
点击本地方式,打开Application Server的配置页面,配置tomcat位置,同样也可自定义端口等信息:
接着配置部署方式,点击Deployment新增部署方式为war exploded:
接着向下滑动,设置Application Context目录为/
接着点击apply然后OK,项目会自动进行配置。
第五步,编写Servlet
在src/main目录鼠标右键,新建java目录,在java目录下新建FirstServlet.class java文件:
问题:右键没有java class选项。点击file→project structure→Moudle→Mark as→source,然后点击Apply,OK。
编写FirstServlet.class:
1 | package src.main.java; |
第六步,注册servlet
在 web.xml 中注册servlet
1 | <servlet> |
第七步,运行项目
点击右上方运行按钮,等待项目编译运行,第一个Servlet项目就运行起来了: