四【Servlet基础】文件配置及环境搭建(重要)

news2024/11/17 7:49:46

文章目录

    • 4.1 Servlet概念
    • 4.2 Servlet作用
    • 4.3 Servlet开发步骤
      • 4.3.1 搭建开发环境
      • 4.3.2 创建项目
      • 4.3.3 部署Servlet
      • 4.3.4 配置Servlet
      • 4.3.5 测试运行

在这里插入图片描述

4.1 Servlet概念

(1)Servlet:Server Applet的简称,是运行在Web服务器端的Java程序,可交互式的处理客户端发送到服务器端的请求,并完成响应操作,它使用Java语言编写(Servlet是Java代码)。

(2)Servlet可实现动态网页。

(3)Servlet是JavaWeb开发程序的基础,是一个标准,由SUN定义,具体细节由Servlet容器进行实现,如Tomact、JBoss等。Servlet是JavaEE规范(一套接口)的一个组成部分。

4.2 Servlet作用

(1)接收客户端请求,完成相关操作

(2)动态生成网页(页面数据可变,不同用户页面数据不同)

(3)将包含操作结果的动态网页响应给客户端。

4.3 Servlet开发步骤

4.3.1 搭建开发环境

将Tomcat安装路径下lib文件夹中与Servlet相关的jar包(lib\servlet-api.jar)配置到classpath环境变量中。
在这里插入图片描述

4.3.2 创建项目

(1)在webapps中建立项目文件夹,例如,webProject02

(2)在webProject02文件中创建WEB-INF文件夹,存放项目的核心内容

(3)在WEB-INF文件夹中,创建如下文件夹和文件:

​ -->创建classes文件夹,存放.class文件

​ -->创建lib文件夹,存放jar文件

​ -->创建web.xml项目配置文件(这个文件可以到ROOT项目向的WEB-INF中复制)

(4)在classes中创建类的包文件夹,在文件夹中通过实现java.servlet.Servlet接口的方式编写ServletDemo01类。重写java.servlet.Servlet接口中的方法,在重写的核心方法service()中编写输出语句,打印访问结果。

package com.cxyzxc.www.servlet01;

import java.io.IOException;
import java.util.Date;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class ServletDemo01 implements Servlet{
	
	@Override
	public void destroy() {
		
	}

	@Override
	public ServletConfig getServletConfig() {
		return null;
	}

	@Override
	public String getServletInfo() {
		return null;
	}

	@Override
	public void init(ServletConfig arg0) throws ServletException {
		
	}

	@Override
	public void service(ServletRequest arg0, ServletResponse arg1)
			throws ServletException, IOException {
		
		System.out.println("My First Servlet!Very Good!");
		
	}
}

4.3.3 部署Servlet

1)编译ServletDemo01.java文件生成ServletDemo01.class字节码文件

2)将ServletDemo01.class文件(连同所在的文件夹)放在Web项目的WEB-INF文件里的classes文件夹中

4.3.4 配置Servlet

编写WEB-INF文件夹中的项目配置文件web.xml。

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

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  version="3.1"
  metadata-complete="true">
	
<!-- 1、添加Servlet节点-->
<servlet>
	<!-- 你的Servlet类名称-->
	<servlet-name>MyFirstServlet</servlet-name>
	<!-- 你的Servlet类的完整路径-->
	<servlet-class>com.cxyzxc.www.servlet01.ServletDemo01</servlet-class>
</servlet>

<!-- 2、 添加servlet-mapping节点-->
<servlet-mapping>
	<!--  这个地方的servlet-name值要和上面servlet-name值保持一致-->
	<servlet-name>MyFirstServlet</servlet-name>
	<!-- url-patter配置的内容是浏览器地址栏中URL里项目名称后的资源内容-->
	<url-pattern>/firstServlet</url-pattern>
</servlet-mapping>

</web-app>

4.3.5 测试运行

1)启动Tomcat

2)打开浏览器,在浏览器地址栏中输入http://localhost:8080/webProject02/firstServlet,可以在Tomcat窗口中看到输出“My First Servlet!Very Good!”内容。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/133960.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GDB无法debug的错误

GDB无法debug的错误 一、输出错误信息描述 Warning: opening /proc/PID/mem file for lwp 707.707 failed: No such file or directory (2) Warning: Cannot insert breakpoint 1. Cannot access memory at address 0x806950 二、解决方法 方法&#xff1a;修改 GDB 的二进…

spring之IoC注解(三)负责注入的注解

文章目录前言一、Value注解Product类spring配置文件测试程序运行结果二、Autowired与Qualifier注解1.创建OrderDao接口2.创建OrderDao接口实现类3.创建OrderService类4.配置文件5.测试程序6.运行结果三、Resource注解&#xff08;重要&#xff09;1、创建StudentDao接口2、创建…

皮带断裂识别检测系统 opencv

皮带断裂识别检测系统通过opencv深度学习yolo计算机视觉识别技术对皮带运行状态进行全天候实时监测&#xff0c;当识别到皮带断裂撕裂时立即抓拍告警存档。OpenCV-Python是一个Python绑定库&#xff0c;旨在解决计算机视觉问题。OpenCV-Python使用Numpy&#xff0c;这是一个高度…

LeetCode刷题复盘笔记—一文搞懂动态规划之392. 判断子序列问题(动态规划系列第三十八篇)

今日主要总结一下动态规划的一道题目&#xff0c;392. 判断子序列 题目&#xff1a;392. 判断子序列 Leetcode题目地址 题目描述&#xff1a; 给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些&#xff08;也可以不删除&a…

08 LIN

基础知识 LIN的全称为Local Interconnect Network。LIN主要功能是为CAN总线网络提供辅助功能&#xff0c;应用场合有智能传感节点、自动车窗节点等。 硬件 特点 1.采用单主多从的组网方式&#xff0c;无CAN总线那样的仲裁机制&#xff0c;最多可连接16个节点&#xff08;1主…

大数据技术——HBase安装配置DDLDML操作

HBase文章目录1. HBase 安装1.1 HBase下载1.2 HBase安装1.3 HBase 初始配置2. 配置高可用并且群起集群2.1 HBase高可用2.2 群起集群2.3 进入HBase客户端3. DDL&DML操作3.1 DDL操作3.2 DML操作1. HBase 安装 1.1 HBase下载 HBase下载官方网站直达 选择自己需要的版本&…

Allegro孔和线被做到器件里面如何解锁操作指导

Allegro孔和线被做到器件里面如何解锁操作指导 在做PCB设计的时候,会遇到孔和线被做到器件的情况,当需要移动器件的时候,孔和线也会跟着移动。如下图 具体操作如下 选择Route选择Convert Fanout

Acwing 796子矩阵的和

Acwing 796子矩阵的和 前缀和 更新 (前缀和数组)&#xff1a;s[i][j]s[i-1][j]s[i][j-1]-s[i-1][j-1]a[i][j] 查询(x1,y1)-------(x2,y2)矩阵的元素和 Ss[x2][y2]-s[x-1][y2]-s[x2][y1-1]s[x1-1][y1-1] 输入一个 n 行 m 列的整数矩阵&#xff0c;再输入 q 个询问&#xff0c;每…

QML教程(二)视觉对象

目录 一、矩形类型&#xff1a;Rectangle 二、图像类型&#xff1a;Image 三、基类类型&#xff1a;Item 一、矩形类型&#xff1a;Rectangle 矩形是最基本的视觉效果&#xff0c;Qt Quick提供了一个矩形类型来绘制矩形。这些矩形可以用颜色或垂直渐变着色。矩形类型还可以在…

【Linux】进程程序替换及shell的模拟实现

​&#x1f320; 作者&#xff1a;阿亮joy. &#x1f386;专栏&#xff1a;《学会Linux》 &#x1f387; 座右铭&#xff1a;每个优秀的人都有一段沉默的时光&#xff0c;那段时光是付出了很多努力却得不到结果的日子&#xff0c;我们把它叫做扎根 目录&#x1f449;进程程序替…

Mybatis-Plus 映射匹配兼容性

目录 问题一&#xff1a;表字段与编码属性设计不同步 问题二&#xff1a;编码中添加了数据库中未定义的属性 问题三&#xff1a;采用默认查询开放了更多的字段查看权限 TableField 问题四&#xff1a;表名与编码开发设计不同步 TableName 从表中查询出数据&#xff0c;并…

31.项目部署

目录 1 一些概念 1.1 项目部署 1.2 WSGI 1.3 uWSGI 1.4 Nginx 2 安装环境与迁移项目 2.1 项目内容 2.2 项目配置 2.2.1 DEBUG 2.2.2 STATIC_ROOT 2.2.3 ALLOWED_HOST 3 uWSGI 3.1 安装uWSGI 3.2 配置uWSGI 3.3 启动 uWSGI 3.4 停止 uWSGI 4 …

官方更新:基于VRA Tokenomics 社区常见问题解答

您好 Verasity 社区&#xff0c; 我们最近通过 Medium 发布了最新的代币经济学&#xff0c;您可以在此处阅读。 我们引入了一些新概念来促进我们作为产品的增长&#xff0c;例如我们的企业收购基金&#xff0c;我们还澄清了我们的流通和总供应量。 在我们的代币经济学文章发布…

SpringBoot概念、创建、运行、Spring Boot 配置文件

Spring Boot 就是 Spring 框架的脚⼿架&#xff0c;它就是为了快速开发 Spring 框架⽽诞⽣的。 1.Spring Boot 优点 快速集成框架&#xff0c;Spring Boot 提供了启动添加依赖的功能&#xff0c;⽤于秒级集成各种框架。内置运⾏容器&#xff0c;⽆需配置 Tomcat 等 Web 容器…

c++11 标准模板(STL)(std::deque)(五)

定义于头文件 <deque> std::deque 迭代器 返回指向容器第一个元素的迭代器 std::deque<T,Allocator>::begin, std::deque<T,Allocator>::cbegin iterator begin(); (C11 前) iterator begin() noexcept; (C11 起) const_iterator begin() const; (C11 前)…

Spring简介及IOC使用

Spring介绍 官网&#xff1a;https://spring.io/ Spring是一个对象的容器&#xff0c;负责管理对象的创建、销毁&#xff0c;以及对象的属性注入&#xff0c;对象的之间的依赖关系。 Spring可以整合其它框架&#xff0c;他基于IOC和AOP来构架多层JavaEE系统&#xff0c;以帮助分…

linux常用命令(六)- 文件属性查看

查看文件类型 - file file命令用于辨识文件类型。 语法 file [-bcvz] [文件或目录...]b&#xff1a;列出辨识结果时&#xff0c;不显示文件名称。c&#xff1a;详细显示指令执行过程&#xff0c;便于排错或分析程序执行的情形。v&#xff1a;显示版本信息。z&#xff1a;尝试…

基于麻雀搜索算法(SSA)优化长短期记忆神经网络参数SSA-LSTM冷、热、电负荷预测(Python代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

第三十六讲:无线AP胖AP模式配置与管理

胖AP(Fat AP)配置一个开放式WLAN非常方便&#xff0c;需要完成的操作包括有线和无线两部分的配置。有线部分即ethernet接口的配置&#xff0c;保证AP能够接入Internet,无线部分的配置包括关联WLAN与VLAN&#xff0c;广播SSID,启用VAP&#xff0c;若无其他DHCP服务器的话&#x…

万物皆有裂痕,那是光进来的地方|2022年个人总结

前两天朋友说要做个视频&#xff0c;记录下2022年的不平凡。突然想到今年是否要写年终总结呢&#xff1f;反复挣扎后&#xff0c;感觉还是应该写个总结&#xff0c;一则记录这一年的不平凡&#xff0c;二则检视这一年的生活与工作状态。- 1 - 工作的危与机2022年对所有的人来说…