目录

一、Servlet的发展历程[了解]

1.1.Servlet的出现?

1.2.早期的Servlet

1.3.中期的Servlet

1.3.1.什么是JSP技术?

1.4.后期的Servlet

二、环境配置

1.1.tomcat

1.1.1.什么是tomcat?

1.1.2.配置步骤

三、Servlet的基本使用

3.1.创建web项目

3.2.添加配置

3.3.编写Servlet代码

3.4.运行


一、Servlet的发展历程[了解]

        Servlet的发展历程就是对Servlet的一步步抽离的过程。

1.1.Servlet的出现?

        客户端,也就是我们肉眼可以看到的部分,客户端所作的事情就是,进行功能的展示,让用户来进行使用,用户的每一次点击实际上都是发出了一次请求;服务器端所作的事情则是,接收客户端所要执行的请求,将数据库中的对应数据拿出来并进行页面的渲染把最终结果返回给客户端。
        servlet出现之前,我们的请求都是基于一些静态的资源来进行请求,比如,html、css等。所以,我们需要一个可以通过用户在客户端的不同点击来动态的对请求进行处理并返回资源的技术。
        静态资源就是一些图片、视频等文件。访问流程:读取磁盘文件到内存中--->启动IO流-->将文件内容以字符串形式返回给浏览器。
        动态资源是一些代码,需要执行后将结果返回给浏览器端。
        此时,我们的Servlet就出现了,Servlet是Java提出的在服务器端编写的一种规范,他可以让我们在服务器端编写一些具备实际的逻辑的代码,来对数据,请求等进行判断和处理,并将最终结果返回给客户端。

1.2.早期的Servlet

        Servlet是Server和Applet的缩写,整体来念就是服务端小程序的意思。我们可以通过Servlet在服务器端实现页面的样式输出,对数据的判断,也就是说,我们可以在服务器端进行代码逻辑的实现,这样我们的服务器就不是仅限于对数据的调用和调出,页面的渲染等。

问题一
        此时,我们的Servlet仍然还有一个问题,那就是我们的Servlet中要编写我们的外在表现(页面展示)、逻辑(代码实现逻辑判断)、控制(对于实际执行的代码段的判断)、业务(实际的业务)等全部都写在了Servlet中。

解决方法
        为了解决我们Servlet代码中编写的内容过于繁多的问题,我们就对Servlet中的功能进行了分割。我们将Servlet中通过输出语句编写的前端代码抽离出来,让其可以不在需要通过大量的输出语句来进行编写。通过,将我们代码中的Java语句通过脚本的方式嵌套进前端代码中。。
        此时,就有了我们jsp的出现。

1.3.中期的Servlet

        由于Servlet中代码的繁杂性,所以,sun公司后面推出了JSP技术。

1.3.1.什么是JSP技术?

        JSP全称是Java Server Page,JSP中采用HTML语言直接生成界面,还可以在界面中使用<% %>等脚本标识嵌入我们需要的Java代码。
        本质上看,最终生成的还是一个Servlet类来进行编译以后解析,但是,对于我们程序员来说,我们的Servlet开发变得简单了很多。此时,我们可以把网页格式的代码通过专门的网页编辑工具编写,然后再通过<%%>等脚本来将我们的Java代码逻辑进行嵌套。

问题二
        此时,虽然我们的网页的编写变得简单了一些,但是,实际上,整个网页的输入、输出、处理、控制全部都是夹在一起编写的,这会对我们网站的维护产生很大的干扰,前端需要在网页中繁多后端代码中找到自己需要修改的内容,后端人员也是一样。

解决
        为了解决JSP开发的问题,我们继续对JSP编写的内容进行了抽离,我们对JSP进行了一个简单的分层,他通过JavaBean的引入,分担了JSP的一部分职责,来让我们的代码开发变得更加简单,耦合度下降。也就是我们所说的JSP+JavaBean的开发理念(Model1)。

问题三
        虽然,我们对JSP进行了一些分层,但是,依据我们现在的MVC的思想来看,JSP在身兼View和Controller两种角色,显然仍是过于繁杂的,还是需要继续分离。

解决
       
我们采用了Servlet+JSP+JavaBean设计模式(Model2)

1.4.后期的Servlet

         我们在对JSP的继续分离之后,我们让JSP只负责显示,Servlet来负责具体的流程控制并处理请求,JavaBean则是负责业务逻辑对数据库的操作。也就是我们所说的Servlet+JSP+JavaBean设计模式(Model2)
        此时,我们Model2在一定基础上已经实现了MVC的设计思想。在此时的Servlet中,我们只需要进行具体的流程控制,处理服务器端所发出的请求即可。
        从概念上,Servlet就是一个接口;但是我们编程人员口中的Servlet则是实现或继承了这个接口的类。我们通过实现或继承使用接口中的方法。

二、环境配置

        以IDEA编辑器为例

1.1.tomcat

1.1.1.什么是tomcat?

        Tomcat 是一个符合 JavaEE WEB 标准的最小的 WEB 容器,所有的 JSP 程序一定要有 WEB 容器的支持才能运行,而且在给定的 WEB 容器里面都会支持事务处理操作。
        Tomcat 是由 Apache 提供的(www.apache.org)分为安装版和解压版,安装版可以在服务中出现一个 Tomcat 的服务,免安装没有,开发中使用免安装版。 Tomcat 简单的说就是一个运行 Java的网络服务器,底层是 Socket 的一个程序,它也是 JSP 和 Servlet 的一个容器。         Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器, 在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。
///以上内容摘自网络/

        当然了,我们只需要知道,我们此时需要tomcat来进行开发即可。

1.1.2.配置步骤

1.下载tomcat

2.解压安装tomcat

3.在IDEA中点击file-----settings-----Build,Execution,Deployment-----Application Servers

4.点击tomcat Sever,在弹出的选择框中选择tomcat的解压目录,点击ok

 5.配置完成

三、Servlet的基本使用

3.1.创建web项目

1.打开IDEA-----file-----new-----project

2.左侧选择maven-----勾选create from archetype-----选择org.apache.maven.archetypes:maven-archetype-webapp-----点击next

3.填写项目的相关信息---点击next

4. 我们的maven配置会自动填充-----点击finish

maven配置:还没有写完,链接周日再发。。。

5.此时,当我们的控制台出现BUILD SUCCESS我们的一个简单的web项目就创建完成了 

3.2.添加配置

1.进入maven   repository官网

https://mvnrepository.com/

2.搜索Servlet,选择java-servlet-api,下载人数最多的或是最新版本,我们这里选择3.1.0版本,将代码复制下来,粘贴到配置文件pom.xml中,然后点击IDEA中提示maven加载更新符号,将maven中添加的配置进行加载。

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.example</groupId>
  <artifactId>helloservlet01</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

  <name>helloservlet01 Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <build>
    <finalName>helloservlet01</finalName>
  </build>
</project>

3.3.编写Servlet代码

1.创建一个Java类,继承我们的HTTPServlet接口,重写servlce方法,在方法中编写如下代码

package org.example;

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

@WebServlet("/helloservlet")
public class HelloServlet01 extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("hello servlet!");
        resp.getWriter().print("hello servlet!");
    }
}

2.通过前面配置好的tomcat运行项目

2.1.在项目中添加tomcat

 2.2.在弹出的界面中点击+号-----在列表左侧点击tomcat下的local

2.3.在右侧弹出的信息中,进行配置项目中的tomcat,共需要配置Server和Deployment两个内容

2.3.1.Server配置

 2.3.2.Deployment配置

第一步,选择实际要配置的项

第二步,在弹出的界面中选择第一项,点击ok

 

第三步,在弹出的界面中配置项目的启动url,当项目启动时,会自动跳转到index.jsp页面中,这里的url就代表的时index.jsp的url。点击apply,点击ok

至此,我们的一个简单的Servlet就写完了。

3.4.运行

1.点击屏幕中的运行符号

2.IDEA会默认打开浏览器,在浏览器的搜索地址中添加自己刚才在Java代码中编写的/helloservlet
        @WebServlet("/helloservlet")

 

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐