servlet概念,运行流程和第一个web项目

Servlet介绍

程序员在编写代码的时候如果能够按照服务器能够识别的规则进行编写,浏览器按照指定的规则进行发送请求,

那么服务器就可以自动调用并执行响应的逻辑代码进行请求处理了。

概念

狭义的 Servlet 是指 Java 语言实现的一个接口,

广义的 Servlet 是指任何实现了这个 Servlet 接口的类,一般情况下,人们将 Servlet 理解为后者。

Servlet 运行于支持 Java 的应用服务器中。

从原理上讲,Servlet 可以响应任何类型的请求,但绝大多数情况下 Servlet 只用来扩展基于 HTTP 协议的 Web 服务器

特点:

运行在支持java的应用服务器上

Servlet 的实现遵循了服务器能够识别的规则,也就是服务器会自动的根据请求调用对应的servlet进行请求处理。

简单方便,可移植性强。

使用

1、创建普通的 java 类并继承HttpServlet

2、覆写service方法

3、在service方法中书写逻辑代码即可

4、在webRoot下的WEB-INF文件夹下的web.xml 文件中配置servlet

运行流程

url:http://localhost:8080/project/my2

组成:

服务器地址:端口号/虚拟项目名 /servlet的别名

URI:虚拟项目名 /servlet的别名

浏览器发送请求到服务器,服务器根据请求URL地址中的URI信息在webapps目录下找到对应的项目文件夹,然后在web.xml中检索对应的servlet,找到后调用并执行Servlet。

第一个web项目

1、新建项目,在包下创建一个普通的java 类MyServlet,并继承HttpServlet
2、在MyServlet类中覆写service方法。

package com.bjsxt.servlet;

import java.io.IOException;
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse;

public class MyServlet extends HttpServlet{ 
    @Override 
    protected void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {
    resp.getWriter().write("this is my first servlet."); 
    System.out.println("this is my first servlet.");
    }
}

(3)在 webRoot 下的 WEB-INF 下找到 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_2_5.xsd" id="WebApp_ID" version="2.5"> <!--配置Servlet --> <!--配置servlet类路径 --> <servlet> <servlet-name>my</servlet-name>
<servlet-class>com.bjsxt.servlet.MyServlet</servlet-class>
</servlet> <!--配置访问方式 --> <servlet-mapping> <servlet-name>my</servlet-name> <url-pattern>/my</url-pattern> </servlet-mapping> </web-app>

(4)打开tomcat的安装目录,在webapps 目录下新建文件夹,文件夹名为project,并将项目源码webRoot下的内容全部复制到该文件夹下。

(5)启动tomcat服务器,并在地址栏中输入:localhost:8080/project/my
总结:

真正运行的代码不是IDEA中编写的代码,而是tomcat服务器中部署好的代码。Tomcat会根据请求自动调用对应的代码请求处理。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值