创建您的第一个servlet

在本教程中,我们将学习如何使用Servlet创建非常基本的Web应用程序。

Servlet是一类,扩展了服务器拦截和响应传入请求的功能。 Servlet是一个Web组件,可在服务器上进行编写,构建和部署,以创建动态Web页面。

首先,我们需要在系统中安装Eclipse IDE,并按照下面列出的步骤进行操作。

1.打开Eclipse并创建一个动态Web项目

小服务程序

2.指定项目详细信息,如下所示,然后单击“下一步”。

小服务程序

3.设置Web模块详细信息并生成web.xml。

4.单击完成。 右键单击Servlet Demo项目,然后单击“转换为Maven项目”。

小服务程序

而已。 基本设置已完成。

验证web.xml文件如下所示。

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_3_0.xsd" id="WebApp_ID" version="3.0"><display-name>ServletDemo</display-name><welcome-file-list><welcome-file>hello.jsp</welcome-file></welcome-file-list><servlet><description></description><display-name>DemoServlet</display-name><servlet-name>demo</servlet-name><servlet-class>com.jcombat.sample.DemoServlet</servlet-class></servlet><servlet-mapping><servlet-name>demo</servlet-name><url-pattern>/demo</url-pattern></servlet-mapping>
</web-app>

在与web.xml中指定的相同的包中创建DemoServlet类。

DemoServlet.java

package com.jcombat.sample;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 DemoServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public DemoServlet() {super();}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {request.getRequestDispatcher("/Test.jsp").forward(request, response);}}

现在,让我们在Web Content下创建两个JSP文件– hello.jsptest.jsp

hello.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Hello World</title></head><body>Welcome to landing page</body>
</html>

Test.jsp

@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Demo Page</title></head><body>Welcome to demo page</body>
</html>

接下来,将pom.xml与以下提到的内容进行比较和验证–

pom.xml

<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>com.jcombat.sample</groupId><artifactId>ServletDemo</artifactId><version>0.0.1-SNAPSHOT</version><packaging>war</packaging><name>Servlet with Maven Demo</name><description>Servlet with Maven & Tomcat Demo</description><dependencies><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.0.1</version><scope>provided</scope></dependency></dependencies><build><sourceDirectory>src</sourceDirectory><plugins><plugin><artifactId>maven-war-plugin</artifactId><version>2.4</version><configuration><warSourceDirectory>WebContent</warSourceDirectory><failOnMissingWebXml>false</failOnMissingWebXml></configuration></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.7</source><target>1.7</target></configuration></plugin></plugins></build>
</project>

翻译自: https://www.javacodegeeks.com/2018/07/creating-first-servlet.html

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

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

相关文章

StarLink星座最新动态及星间组网动态路由探讨

StarLink星座最新动态及星间组网动态路由探讨 2020-06-24 11:50 StarLink星座最新动态及星间组网动态路由探讨 作者 | 刘帅军、徐帆江、刘立祥、范媛媛、王大鹏 &#xff08;中国科学院软件研究所&#xff0c;天基综合信息系统重点实验室&#xff09; 一 概述 自2020年6月开…

累计分布函数CDF、互补累计分布函数CCDF、期望Expection

1 CDF 累积分布函数(Cumulative Distribution Function&#xff0c;CDF)&#xff0c;又叫分布函数&#xff0c;是概率密度函数的积分&#xff0c;能完整描述一个实随机变量X的概率分布。一般以大写CDF标记,&#xff0c;与概率密度函数probability density function&#xff08…

markov chain, MRP MDP

在强化学习中&#xff0c;马尔科夫决策过程&#xff08;Markov decision process, MDP&#xff09;是对完全可观测的环境进行描述的&#xff0c;也就是说观测到的状态内容完整地决定了决策的需要的特征。几乎所有的强化学习问题都可以转化为MDP。本讲是理解强化学习问题的理论基…

(网络)流和会话

流:指具有相同五元组(源IP,源端口,目的IP,目的端口,协议)的所有包 会话:指由双向流组成的所有包(源和目的互换)

Filtration, σ-algebras

1. Filtration filtration在钱敏平老师和龚光鲁老师的《随机过程论》中直接称其为非降的KaTeX parse error: Undefined control sequence: \sigmma at position 1: \̲s̲i̲g̲m̲m̲a̲代数族。如图。 一般叫σ\sigmaσ-代数流或σ\sigmaσ-域流 在鞅论中的花体FtF_tFt​&…

gradle 命令行_Gradle命令行便利

gradle 命令行在我的《用Gradle构建Java的gradle tasks 》一文中&#xff0c;我简要提到了使用Gradle的“ gradle tasks ”命令来查看特定Gradle构建的可用任务。 在这篇文章中&#xff0c;我将对这一简短提及进行更多的扩展&#xff0c;并查看一些相关的Gradle命令行便利。 Gr…

怎样更好地理解并记忆泰勒展开式

本段的核心思想是仿造。当我们想要仿造一个东西的时候&#xff0c;无形之中都会按照上文提到的思路&#xff0c;即先保证大体上相似&#xff0c;再保证局部相似&#xff0c;再保证细节相似&#xff0c;再保证更细微的地方相似……不断地细化下去&#xff0c;无穷次细化以后&…

新的DMN编辑器预览

Workbench 7.13.0.Final于10月16日星期二发布&#xff0c;此版本带来了许多有趣的功能和重要的修复程序。 亮点之一是作为技术预览功能的新DMN编辑器&#xff0c;该功能仍在开发中&#xff0c;但您可以开始使用。 在本文中&#xff0c;您将学习如何启用DMN编辑器预览&#xff…

指数矩阵(exponential matrix)

类似于指数ex……e^x……ex……的本质是一种近似&#xff0c;eAt……e^{At}……eAt……是同样原理。 http://www.mashangxue123.com/%E7%BA%BF%E6%80%A7%E4%BB%A3%E6%95%B0/1756604500.html

Boole‘s,Doob‘s inequality,中心极限定理Central Limit Theorem,Kolmogorov extension theorem, Lebesgue‘s domin

1. Boole’s inequality In probability theory, Boole’s inequality, also known as the union bound, says that for any finite or countable set of events, the probability that at least one of the events happens is no greater than the sum of the probabilities …

秩为 1 的矩阵的一些性质

前言 从上面的分析和例题看到&#xff0c;对于秩为1的n阶矩阵&#xff0c;零是其n重或n-1重特征值&#xff0c;如果是n-1重&#xff0c;则非零特征值是矩阵的主对角线元素之和;另外还看到&#xff0c;秩为1的矩阵可以分解为一个非零列向量与另一个非零列向量的转置的乘积&#…

probability space 概率空间,Filtration,σ-algebras

1. probability space 概率空间 1.1 概率基础 1.2 概率空间 2. Filtration filtration在钱敏平老师和龚光鲁老师的《随机过程论》中直接称其为非降的KaTeX parse error: Undefined control sequence: \sigmma at position 1: \̲s̲i̲g̲m̲m̲a̲代数族。如图。 一般叫σ\…

概率论中PDF、PMF和CDF的区别与联系

在概率论中&#xff0c;经常出现PDF、PMF和CDF&#xff0c;那么这三者有什么区别与联系呢&#xff1f; 1. 概念解释 PDF&#xff1a;概率密度函数&#xff08;probability density function&#xff09;, 在数学中&#xff0c;连续型随机变量的概率密度函数&#xff08;在不至…

随机游走 Random Walk

随机游走&#xff08;英语&#xff1a;Random Walk&#xff0c;缩写为 RW&#xff09;&#xff0c;是一种数学统计模型&#xff0c;它是一连串的轨迹所组成&#xff0c;其中每一次都是随机的。[1][2]它能用来表示不规则的变动形式&#xff0c;如同一个人酒后乱步&#xff0c;所…

wald

1. Wald’s equation Let (Xn)n∈N(X_n)_{n∈ℕ}(Xn​)n∈N​ be a sequence of real-valued, independent and identically distributed (i.i.d.) random variables and let NNN be a nonnegative integer-value random variable that is independent of the sequence (Xn)n∈…

Java 11就在这里,您准备好进行切换了吗?

在应该将Java 9发行版“震撼我们的世界”一年之后&#xff0c;我们实际上一直在等待的LTS版本终于来了 我们知道&#xff0c;大多数开发人员&#xff0c;团队&#xff0c;公司等尚未通过Java 8进行更新。 即使去年发布了模块Java 9&#xff0c;然后在3月又发布了Java 10。 令…

随机变量和的分布—卷积公式distribution convolution的应用

在概率论里面&#xff0c;大家都会碰到一类问题&#xff0c;就是涉及到这样一类题目&#xff1a; 一般来说&#xff0c;这种类型的题目有两种方法来解决&#xff0c;第一种就是二重积分法&#xff1b;第二种就是应用卷积公式。下面我给大家列出了卷积公式&#xff1a; 但是…

Fluent Design单选按钮,复选框,选择框,Java菜单

这次我对JMetro进行了重大更新。 3.8版引入了以下新的Fluent Design &#xff08;FDS&#xff09;启发风格&#xff08;深色和浅色&#xff09;和更新&#xff1a; 新的单选按钮样式&#xff1b; 复选框的新样式&#xff1b; 菜单的新样式&#xff1b; 更新了上下文菜单的样…

stability condition in queueing system

https://www.unf.edu/~cwinton/html/cop4300/s09/class.notes/e1-Stability.pdf