0
点赞
收藏
分享

微信扫一扫

Servlet执行原理和API详解---【创建Servlet项目】

黎轩的闲暇时光 2023-06-19 阅读 84

目录

一、Servlet 是什么?

主要工作:

第一个Servlet项目:

编写代码

打包程序


一、Servlet 是什么?

Servlet 是一款基于HTTP协议,用来开发Java Web,运行在Tomcat里面的里的框架技术。

一种实现动态页面的技术 . 是一组 Tomcat 提供给程序猿的 API, 帮助程序猿简单高效的开发一个 web app.

主要工作:

1.建立连接:客户端和程序的连接(当用户输入了请求URL后,程序能感应到用户的请求)。

2.获取用户请求参数:处理request对象。

3.将服务器处理结果返回给客户端:返回response对象。

第一个Servlet项目:

前置条件:配置国内源,创建一个Maven项目

注意此处名字和存储地址不要有中文

 

 

 点击finish,Maven项目创建成功,点击main,创建一个java文件

 右键java,创建java源代码根目录

 添加Servlet框架,在pom.xml中导入依赖,打开中央仓库mvnrepository.com

 

 点击第一个,然后选择与tomcat版本相关的版本,本人下载的是8.5版本

 

 点击进去自动复制

 导入依赖

 

 

 点击刷新,成功导入

1)  main 目录下, java 目录并列, 创建一个 webapp 目录 (注意, 不是 webapps)

2) 创建 web.xml

然后在 webapp 目录内部创建一个 WEB-INF 目录, 并创建一个 web.xml 文件

编写代码

java 目录中创建一个类 HelloServlet, 代码如下 :

@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) 
throws ServletException, IOException {
        System.out.println("hello");
        resp.getWriter().write("hello");
   }
}
  • 创建一个类 HelloServlet , 继承自 HttpServlet
  • 在这个类上方加上 @WebServlet("/hello") 注解, 表示 Tomcat 收到的请求中, 路径为 /hello 的请求才会调用 HelloServlet 这个类的代码. (这个路径未包含 Context Path)
  • 重写 doGet 方法. doGet 的参数有两个, 分别表示收到的 HTTP 请求 和要构造的 HTTP 响应. 这个方法会在 Tomcat 收到 GET 请求时触发
  • HttpServletRequest 表示 HTTP 请求. Tomcat 按照 HTTP 请求的格式把 字符串 格式的请求转 成了一个 HttpServletRequest 对象. 后续想获取请求中的信息(方法, url, header, body ) 都是 通过这个对象来获取.
  • HttpServletResponse 表示 HTTP 响应. 代码中把响应对象构造好(构造响应的状态码, header,body )
  • resp.getWriter() 会获取到一个流对象, 通过这个流对象就可以写入一些数据, 写入的数据会被
  • 构造成一个 HTTP 响应的 body 部分, Tomcat 会把整个响应转成字符串, 通过 socket 写回给浏览.

打包程序

使用 maven 进行打包 . 打开 maven 窗口 ( 一般在 IDEA 右侧就可以看到 Maven 窗口 , 如果看不到的话 ,

可以通过 菜单 -> View -> Tool Window -> Maven 打开 )

然后展开 Lifecycle , 双击 package 即可进行打包 .

 

如果比较顺利的话, 能够看到 SUCCESS 这样的字样 .

 

打包成功后 , 可以看到在 target 目录下 , 生成了一个  war .

 

 将这个war包放在tomcat的webapps根目录下

 打开Tomcat的startup.bat,出现startup启动成功

 在浏览器中输入网址

 

页面显示hello,Servlet项目创建成功

举报

相关推荐

0 条评论