如何利用Idea创建一个Servlet项目(新手向)

💕"Echo"💕
作者:Mylvzi
文章主要内容:如何利用Idea创建一个Servlet项目(新手向)
在这里插入图片描述
Servlet是tomcat的api,利用Servlet进行webapp开发很方便,本文将介绍如何通过Idea创建一个Servlet项目(一共分为七步,这可能是我们写过的最复杂的 hello world)

在项目创建的过程中,我们将使用maven进行代码的编译和打包,mavn可以认为是一个更加专业的编译和打包工具

1.创建项目

打开Idea,点击NEW创建一个新项目

生成如下的目录结构

在这里插入图片描述

maven配置项介绍
在这里插入图片描述

2.引入依赖
我们所使用的Servlet是Tomcat的api,不是JDK,也就是说Servlet的使用需要引入第三方库,我们可以直接手动下载,但是在maven中不需要,我么只需将对应的地址写入到maven的配置项之中即可,maven会自动帮助我们下载

首先先去maven的中央仓库获取到Servlet的地址

https://mvnrepository.com/

进入界面之后,在上方的搜索框中输入servlet,然后点击search按钮
在这里插入图片描述
点击第一条结果
在这里插入图片描述
下翻,找到与你的tomcat版本相匹配的servlet版本(如果你的tomcat是8,直接点击下载3.1.0)
在这里插入图片描述
关于与tomcat匹配的servlet版本,可参考下图
在这里插入图片描述
点击对应的版本,下拉,找到Maven下面的代码,复制
在这里插入图片描述

打开idea,在maven的配置项文件中,复制刚才的内容(需要先创建一个标签)
在这里插入图片描述
注意:第一次引入依赖的时候可能需要等待一些时间(maven需要进行下载),如果下载不成功,尝试更换下网络

3.创建目录

maven项目是普适的,不仅仅局限于Tomcat,但是如果想在Maven中使用Tomcat,就需要遵守Tomcat的一些规范,这些规范就是一个固定的目录结构

在这里插入图片描述
与此同时,在我们创建好的web.xml文件中也需要添加一些内容,才符合完整的tomcat的文件格式要求

复制内容:

<!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.编写代码
1.创建一个类,并继承于HttpServlet,同时添加注解,进行路由匹配在这里插入图片描述
2.重写doGet方法

@WebServlet("/hello")// 这个注解的作用是进行路由匹配
public class HelloServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("hello world");// 这是在tomcat的控制台中打印resp.getWriter().write("hello world");// 在对应的服务器上进行打印}
}

在这里插入图片描述
服务器处理来自于客户端的请求主要分为三步:

  1. 读取请求并解析
  2. 根据请求计算响应
  3. 将响应返回给客户端

其中1,3两步tomcat自动帮助我们完成,让程序员只需关注内部的数据处理的逻辑

5.打包程序

1.首先配置属性–点击pom.xml–配置

在这里插入图片描述

    <packaging>war</packaging><build><finalName>java1</finalName></build>

注意:java1所在部分就是你最终的文件名称

2.开始进行打包 – 点击右侧的M按键

在这里插入图片描述

3.双击package
在这里插入图片描述

当控制台中出现"BUILD SUCCESS"时表示创建成功
在这里插入图片描述
同时,在左侧也会创建出一个target目录
在这里插入图片描述
最后一个.war文件就是我们最终

6.部署程序
打开tomcat所在目录,将刚才创建好的war包复制到tomcat的webapp目录下

1.复制.war文件
在这里插入图片描述

2.打开tomcat所在目录,进入webapp目录

3.在webapp目录中进行粘贴
在这里插入图片描述

这样就完成了部署程序

7.验证程序
进入tomcat的bin目录下,双击startup.bat打开程序
在这里插入图片描述
在这里插入图片描述
最后出现一个打开时间就代表成功打开

在浏览器中访问部署好的程序
在这里插入图片描述

在这里插入图片描述

最终结果:
1.首先在打开的界面上出现hello world
在这里插入图片描述
2.在打开的tomcat程序中也有hello world
在这里插入图片描述

快去尝试部署一个程序吧!

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

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

相关文章

Kotlin函数和对象

1.高阶函数 如果一个函数的参数是函数类型或者返回值是函数类型&#xff0c;那么这个函数就是高阶函数。 在kotlin中函数也是有类型的&#xff0c;跟整型、字符串类型是同样的性质&#xff0c;函数类型就是将函数的“输入参数类型”和“返回值类型”的抽象表达&#xff0c;如&…

C#使用MiniExcel导入导出数据到Excel/CSV文件

MiniExcel简介 简单、高效避免OOM的.NET处理Excel查、写、填充数据工具。 目前主流框架大多需要将数据全载入到内存方便操作&#xff0c;但这会导致内存消耗问题&#xff0c;MiniExcel 尝试以 Stream 角度写底层算法逻辑&#xff0c;能让原本1000多MB占用降低到几MB&#xff…

论文阅读,ProtoGen: Automatically Generating Directory Cache Coherence Protocols(三)

目录 一、Article:文献出处&#xff08;方便再次搜索&#xff09; &#xff08;1&#xff09;作者 &#xff08;2&#xff09;文献题目 &#xff08;3&#xff09;文献时间 &#xff08;4&#xff09;引用 二、Data:文献数据&#xff08;总结归纳&#xff0c;方便理解&am…

扫地机器人与项目管理

最近家里新装了一台扫地机器人&#xff0c;可以远程操控&#xff0c;每次回家前&#xff0c;都让它扫拖一遍&#xff0c;非常的干净。家里东西摆放比较杂乱&#xff0c;每次它要清理的面积都是一个不规则图形。通过几次的观察&#xff0c;发现它总是把要清理的区域先整个画一个…

1057:简单计算器

题目描述】 一个最简单的计算器&#xff0c;支持, -, *, / 四种运算。仅需考虑输入输出为整数的情况&#xff0c;数据和运算结果不会超过int表示的范围。然而&#xff1a; 1. 如果出现除数为0的情况&#xff0c;则输出&#xff1a;Divided by zero! 2. 如果出现无效的操作符(即…

TCP如何保证传输可靠性?

文章目录 前言1、连接管理1.1、三次握手1.2、四次挥手 2、校验和3、序列号 确认应答4、重传机制4.1、超时重传4.2、快速重传 5、流量控制5.1、累计应答5.2、滑动窗口 6、拥塞控制6.1、慢启动6.2、拥塞避免6.3、拥塞发生6.4、快速恢复 前言 文章参考&#xff1a; 《网络是怎样…

「年后复工主题」app用户运营拉新,接入引爆用户增长的活动

随着春节假期的结束&#xff0c;人们重返工作岗位&#xff0c;各行各业也迎来了年后复工的高峰期。在这个时间节点&#xff0c;APP运营团队面临着一个绝佳的机遇——利用节日余温和复工活力&#xff0c;通过策划一系列相关主题的趣味活动来吸引新用户&#xff0c;实现用户增长的…

文件上传漏洞--Upload-labs--Pass06--空格绕过

一、什么是空格绕过 在Windows系统中&#xff0c;Windows特性会自动删除文件后缀名后的空格&#xff0c;这使我们看 .php 和 .php 二者没有任何区别&#xff0c;实际上二者是有区别的。若网页源码没有使用 trim()函数 来进行去除空格的操作&#xff0c;就会使网页存在 空格绕…

什么样的服务器是高性能服务器?

首先&#xff0c;高性能服务器应具备高处理能力。随着业务的不断扩展和数据量的爆炸性增长&#xff0c;高性能服务器需要具备强大的计算能力&#xff0c;能够快速处理各种复杂的业务和数据。这要求高性能服务器采用先进的处理器技术&#xff0c;如多核处理器、GPU加速等&#x…

IDEA中创建web项目(配置tomcat,tomcat启动报程序包javax.servlet.http不存在,tomcat控制台乱码问题)

文章目录 一、新建动态web项目1、新建项目2、选择创建动态web项目3、项目命名4、编辑index.jsp 二、配置Tomcat1、新增tomcat服务器配置2、选择服务器类型3、配置服务器参数4、部署项目5、完成配置6、启动运行7、访问web项目 三、tomcat启动报程序包javax.servlet.http不存在四…

个人简历补充

个人简历补充 1.对工作的认识2.八股文和知识面3.框架/架构角度深扒3.1 前端3.1.1 mPaaS&#xff08;移动领域&#xff09;3.1.2 普通前端项目框架3.1.3 微前端 3.2 后端 持续更新 1.对工作的认识 2.八股文和知识面 前端&#xff08;基础知识 / 开发能力 / 总结输出能力&#xf…

vue-productionSourceMap作用

当其设置为false时(productionSourceMap: false) 当其设置为true时(productionSourceMap: true) 注:1.当设置为true时,打包后每个文件都有一个.map文件,其目的是为了精确定位代码错误 2.当设置为false时,可减少项目打包大小 3.正式环境禁止使用true,因为其可通过反编译.map文件…

HCIA-HarmonyOS设备开发认证V2.0-IOT硬件子系统-UART

目录 一、UART 概述二、UART 模块相关API三、UART 接口调用实例四、UART HDF驱动开发4.1、开发步骤(待续...) 坚持就有收获 一、UART 概述 UART 是通用异步收发传输器&#xff08;Universal Asynchronous Receiver/Transmitter&#xff09;的缩写&#xff0c;是通用串行数据总…

调用百度文心AI作画API实现中文-图像跨模态生成

作者介绍 乔冠华&#xff0c;女&#xff0c;西安工程大学电子信息学院&#xff0c;2020级硕士研究生&#xff0c;张宏伟人工智能课题组。 研究方向&#xff1a;机器视觉与人工智能。 电子邮件&#xff1a;1078914066qq.com 一&#xff0e;文心AI作画API介绍 1. 文心AI作画 文…

上传(图片)文件的功能实现

说句实话&#xff0c;现在的开发简单多了。因为有现成的第三方的上传文件的代码。如果放在我们以前做开发&#xff0c;上传文件的代码都得自己写。 那现在的程序员面对上传文件的功能到底写啥代码。 1&#xff09;、对于前端人员&#xff1a;就是把后端的请求地址&#xff0c…

阿基米德签证小程序管理系统功能清单

阿基米德签证小程序管理系统&#xff0c;底层架构采用当前国内最流行的php框架thinkphp8.0、采用广泛使用的MYSQL数据库&#xff0c;管理后台前后台分离&#xff0c;同时使用了当今最流行的基于VUE3和elementPlus前端框架&#xff0c;小程序采用了支持多端合一的UNI-APP开发&am…

Kernel 地图

前言 在 Linux Kernel 中&#xff0c;根据 Makefile 和 Kconfig&#xff0c;可以快速地了解一个小的内核子系统。所以我将这两个文件称之为 Kernel 地图。 Kernel 地图 基本上&#xff0c;Linux 内核中&#xff0c;每一个目录下面都有一个 Makefile 和一个 Kconfig 文件。这…

docker 安装达梦dm8 包含lincese

1.加载达梦数据库docker镜像 dm_v8.1.1.66_x86_rh7_64_ent.tar为申请的镜像文件。 docker load -i dm_v8.1.1.66_x86_rh7_64_ent.tar 查看镜像 docker images 创建达梦数据库容器 执行创建命令&#xff1a; docker run -d -p 30236:5236 --restartalways --name dm8_test…

Day11-Linux系统iNode及链接知识及企业按哪里精讲

Day11-Linux系统iNode及链接知识及企业按哪里精讲 1. 文件核心 属性知识1.1 什么是索引节点&#xff08;inode&#xff09;。1.2 索引节点作用1.3 inode是怎么产生的&#xff1f;1.4 inode的特点&#xff1f;1.5 Linux系统读取文件的原理1.6 企业生产案例&#xff1a;No space …

行人重识别综述

Deep Learning for Person Re-identification: A Survey and Outlook 论文地址https://arxiv.org/pdf/2001.04193 1. 摘要 we categorize it into the closed-world and open-world settings. closed-world&#xff1a;学术环境下 open-world &#xff1a;实际应用场景下 2…