简介Servlet1

简介: 简介Servlet

一、maven中心库

maven中心库是一个“工程管理/构建工具”,其核心功能有:

  • 管理依赖;
  • 构建/编译,这个过程会调用JDK;
  • 打包,就是可以将Java代码打包成jar文件或者war文件。

maven中心库能够将这些操作串起来。

可以不用下载安装maven,idea中内置了maven中心库。

二、简介Servlet

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

动态页面就是每次用户输入的参数不同构造出的输出结果不同。例如百度的搜素页面,每次搜索的关键词不同得到的页面结果也不同。

三、实现Servlet动态页面

1、创建一个maven项目

创建一个项目,选择maven,点击next选择文件存储的路径即可。

2、引入依赖

进入maven库 https://mvnrepository.com下载servlet依赖,选择与自己JDK和tomcat匹配的版本。

将对应的maven内容引入到创建的maven项目中的pom.xml中,并需要引入在depencies标签中。

 

在刚开始引入时会出现报红,但是当依赖自动下载完成之后字体就会恢复正常。

3、创建目录结构

maven虽然已经有了一些目录:

  • src 表示源代码所在的目录。
  • main/java 表示源代码的根目录.,后续创建 .java 文件就放到这个目录中.
  • main/resources 表示项目的一些资源文件所在的目录. 此处暂时不关注.
  • test/java 表示测试代码的根目录. 此处暂时不关注。

但是还是不足以支撑写一个Servlet项目,还需要手动创建一些目录和文件。

web.xml文件内容如下:

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >
 
<web-app>
    <display-name>Archetype Created Web Application</display-name>
</web-app>

4、编写Servlet代码

在main/java目录下创建HelloServlet类,该类继承HttpServlet,然后重写了doGET方法。

@WebServlet("/hello")
public class HelloServlet  extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("hello world");
        resp.getWriter().write("hello world");
    }
}
  • doGet方法要做的工作就是根据请求计算出响应,这个方法在Tomcat收到一个HTTP GET请求的时候就会被Tomcat调用,也是一个回调函数。
  • 传入的HttpServletRequest代表的是一个HTTP请求,HttpServletResponse代表的是一个HTTP响应。
  • 在这个类上方加上 @WebServlet("/hello") 注解, 表示 Tomcat 收到的请求中, 路径为 /hello 的请求才会调用 HelloServlet 这个类的代码. (这个路径未包含 Context Path)。
  • resp.getWriter() 会获取到一个流对象, 通过这个流对象就可以写入一些数据, 写入的数据会被 构造成一个 HTTP 响应的 body 部分, Tomcat 会把整个响应转成字符串, 通过 socket 写回给浏览器.

这里就体现出如果一个类要被TomCat调用需要满足如下条件:

  • a) 创建的类需要继承自 HttpServlet
  • b) 这个类需要使用 @WebServlet 注解关联上一个 HTTP 的路径
  • c) 这个类需要实现 doXXX 方法.


5、打包

需要先修改pom.xml,打包成一个war包,因为默认是jar包,再设置打包的文件名称。

  <!-- 打的包是一个war包,默认是jar包 -->
    <packaging>war</packaging>
    <build>
        <!-- 表示打出的war包的名称-->
        <finalName>hello</finalName>
    </build>

然后双击package 进行打包。

打包成功,并在target文件夹下生成了hello.war文件。

6、部署

将上一步生成的hello.war文件拷贝到Tomcat的webapps目录下。


7、验证程序

打开Tomcat服务器,使用127.0.0.1:8080/hello/hello在浏览器中进行访问。


绿色代表第一级目录,叫做Context Path,就是刚才拷贝到webapps目录下的war包文件名称。

紫色代表第二级目录,叫做Servlet Path,是刚才创建的HelloServlet上面的

@WebServlet("/hello")注解名称。

如果对代码进行了如下修改:

resp.getWriter().write("hello world"+System.currentTimeMillis());

就需要再将5、6、7 再重复一遍,新修改的代码再次访问时才会生效。

这就引入了idea中的是smart Tomcat插件方便我们进行操作。

安装SmartTomcat插件:

下载完成后进行apply应用。

然后点击运行

出现如下信息表示成功:


然后再次在浏览器中访问即可:

每次刷新,时间戳也会发生改变。


简介Servlet2:https://developer.aliyun.com/article/1521657?spm=a2c6h.13148508.setting.31.55b44f0eN6tfHC

目录
相关文章
|
6月前
|
XML 安全 Java
Servlet 教程 之 Servlet 简介 3
Servlet是运行在Web服务器上的Java程序,用于处理HTTP请求和响应,与数据库或应用交互。相比CGI,Servlet性能更优,平台无关,并受服务器安全管理器保护。它们主要任务包括读取客户端数据、处理信息、生成结果及发送响应。Servlet利用javax.servlet和javax.servlet.http包构建,遵循Java Servlet 2.5和JSP 2.1规范,可被编译成Java类运行。
43 1
|
5月前
|
Java 应用服务中间件
Servlet简介&快速入门
Servlet简介&快速入门
|
6月前
|
JSON 网络协议 前端开发
简介Servlet2
简介Servlet
44 1
|
6月前
|
移动开发 JavaScript 前端开发
HTML ,XHTML,HTML5简介,js,JSP与Servlet的关系理解
HTML ,XHTML,HTML5简介,js,JSP与Servlet的关系理解
87 5
|
6月前
|
Java 应用服务中间件 容器
Servlet简介、执行流程及生命周期
Servlet简介、执行流程及生命周期
68 1
|
小程序 Java API
04JavaWeb基础 - Servlet简介
04JavaWeb基础 - Servlet简介
34 0
|
小程序 Java 应用服务中间件
Servlet简介
Servlet简介
85 0
Servlet简介
|
XML Java 应用服务中间件
Servlet简介和环境设置
Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。 使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。 总而言之,Servlet 是用于处理 Web 请求和响应的标准 Java 技术,是 Web 应用程序开发不可或缺的组成部分。
72 0
|
缓存 Java
Servlet 简介
Servlet 简介