IDEA創(chuàng)建Maven工程Servlet的詳細(xì)教程
IDEA創(chuàng)建Maven工程servlet
Servlet(Servlet Applet),全稱Java Servlert,用于開(kāi)發(fā)動(dòng)態(tài)web資源的技術(shù)。是用Java編寫的服務(wù)器端程序,主要功能在于處理服務(wù)器請(qǐng)求。
Tomcat:由Apache組織提供的一種Web服務(wù)器,提供對(duì)jsp和Servlet的支持。它是一種輕量級(jí)的javaWeb容器(服務(wù)器),也是當(dāng)前應(yīng)用最廣的JavaWeb服務(wù)器(免費(fèi))。
jsp:(java server page),java提供的一門開(kāi)發(fā)web網(wǎng)頁(yè)的技術(shù)。
web應(yīng)用完全是基于http協(xié)議的,http協(xié)議有請(qǐng)求報(bào)文(request)和響應(yīng)報(bào)文(request),請(qǐng)求報(bào)文是瀏覽器向服務(wù)器發(fā)送的數(shù)據(jù)形成的數(shù)據(jù)對(duì)象,響應(yīng)報(bào)文是服務(wù)器向?yàn)g覽器發(fā)送的數(shù)據(jù)形成的信息。servlet能夠讀取請(qǐng)求報(bào)文的內(nèi)容,并對(duì)報(bào)文進(jìn)行處理,生成動(dòng)態(tài)Web內(nèi)容。
一般的網(wǎng)頁(yè)程序,就是通過(guò)瀏覽器訪問(wèn)來(lái)實(shí)現(xiàn)的,在這個(gè)過(guò)程中,瀏覽器發(fā)送訪問(wèn)請(qǐng)求,服務(wù)器接收請(qǐng)求,并對(duì)瀏覽器的請(qǐng)求作出相應(yīng)的處理.這就是熟悉的B/S模型(瀏覽器-服務(wù)器模型).而servlet就是對(duì)請(qǐng)求作出處理的組件,運(yùn)行于支持Java的應(yīng)用服務(wù)器中。
狹義理解Servlet是java語(yǔ)言實(shí)現(xiàn)的一個(gè)類,要根據(jù)這個(gè)類進(jìn)行相應(yīng)的擴(kuò)展開(kāi)發(fā)。
開(kāi)發(fā)流程如下:
- 編寫一個(gè)java類,繼承HttpServlet類
- 重寫HttpServlet類的doGet方法和doPost方法
- 配置web.xml文件,或者使用注解對(duì)servlet進(jìn)行配置。servlet的配置指定了哪個(gè)servlet響應(yīng)前端的處理請(qǐng)求。
一、使用骨架創(chuàng)建Maven的web工程

二、Servlet目錄結(jié)構(gòu)和代碼
Servlet目錄

MyServlet類代碼如下:
package com.bigdata.servlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
* @author bigdata
* @create 2020-10-25 16:03
*/
public class MyServlet extends HttpServlet {
protected void doPods(HttpServletRequest request,HttpServletResponse response) throws javax.servlet.ServletException, IOException {
doGet(request,response);
}
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws javax.servlet.ServletException,java.io.IOException{
request.getRequestDispatcher("/hello.jsp").forward(request,response);
}
}
三、web.xml設(shè)置
1)web.xml文件配置詳解
MyServlet com.bigdata.servlet.MyServlet MyServlet /first 當(dāng)瀏覽器訪問(wèn)/first的時(shí)候,服務(wù)器自然就會(huì)把請(qǐng)求交給MyServlet進(jìn)行處理。
2)Servlet具體配置

<!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> <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.bigdata.servlet.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
四、jsp代碼
hello.jsp代碼如下:
<%-- Created by IntelliJ IDEA. User: bigdata Date: 2020/10/25 Time: 17:28 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>才開(kāi)始學(xué)java,要堅(jiān)持到底</title> </head> <body> welcome to learn java,come on ~ </body> </html>
五、pom配置文件
1)獲取項(xiàng)目依賴的jar包
Maven中央倉(cāng)庫(kù)
可以去Maven中央倉(cāng)庫(kù)獲取Servlet依賴的jar包的坐標(biāo)


Servlet完整的pom配置文件如下:
<?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>com.bigdata</groupId>
<artifactId>maven_web</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- 修改maven工程運(yùn)行環(huán)境 -->
<!-- 修改tomcat環(huán)境 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8888</port>
</configuration>
</plugin>
<!-- 修改maven-compiler-plugin環(huán)境 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<target>11</target>
<source>11</source>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
六、運(yùn)行Servlet項(xiàng)目


查看頁(yè)面

至此IDEA創(chuàng)建Maven工程Servlet完成
到此這篇關(guān)于IDEA創(chuàng)建Maven工程Servlet的詳細(xì)教程的文章就介紹到這了,更多相關(guān)IDEA創(chuàng)建Maven工程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 如何解決創(chuàng)建maven工程時(shí),產(chǎn)生“找不到插件的錯(cuò)誤”問(wèn)題
- IDEA2023創(chuàng)建MavenWeb項(xiàng)目并搭建Servlet工程的全過(guò)程
- idea創(chuàng)建maven父子工程導(dǎo)致子工程無(wú)法導(dǎo)入父工程依賴
- 使用IDEA創(chuàng)建maven父子工程項(xiàng)目 (圖文)
- idea中創(chuàng)建maven的Javaweb工程并進(jìn)行配置(圖文教程)
- idea中創(chuàng)建多module的maven工程的方法
- idea 創(chuàng)建 maven web 工程流程(圖文教程)
- 詳解eclipse創(chuàng)建maven項(xiàng)目實(shí)現(xiàn)動(dòng)態(tài)web工程完整示例
- Eclipse中使用Maven創(chuàng)建Java Web工程的實(shí)現(xiàn)方式
- Apache Maven創(chuàng)建工程的實(shí)現(xiàn)示例
相關(guān)文章
解析Java實(shí)現(xiàn)隨機(jī)驗(yàn)證碼功能的方法詳解
本篇文章是對(duì)Java實(shí)現(xiàn)隨機(jī)驗(yàn)證碼功能的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
使用Springboot封裝好的發(fā)送post請(qǐng)求的工具類
本文介紹了在Springboot中封裝發(fā)送HTTP請(qǐng)求的工具類,并提供了普通的HTTP請(qǐng)求工具類代碼和Response類的使用示例,這些工具類可為開(kāi)發(fā)者提供便利性和參考價(jià)值,幫助提高開(kāi)發(fā)效率2024-09-09
圖數(shù)據(jù)庫(kù)NebulaGraph的Java 數(shù)據(jù)解析實(shí)踐與指導(dǎo)詳解
這篇文章主要介紹了圖數(shù)據(jù)庫(kù)NebulaGraph的Java 數(shù)據(jù)解析實(shí)踐與指導(dǎo)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
SpringBoot使用@RestController處理GET和POST請(qǐng)求的代碼詳解
在Spring?MVC中,@RestController注解的控制器類可以處理多種HTTP請(qǐng)求方法,包括GET和POST,所以本文就給大家詳細(xì)介紹了SpringBoot使用@RestController處理GET和POST請(qǐng)求的示例代碼,需要的朋友可以參考下2024-07-07
初識(shí)sa-token及登錄授權(quán)簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要為大家介紹了sa-token及登錄授權(quán)簡(jiǎn)單實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
詳解Java動(dòng)態(tài)加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)
本篇文章主要介紹了詳解Java動(dòng)態(tài)加載數(shù)據(jù)庫(kù)驅(qū)動(dòng),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
Java.lang.ArrayIndexOutOfBoundsException的報(bào)錯(cuò)解決
Java.lang.ArrayIndexOutOfBoundsException是一個(gè)常見(jiàn)的錯(cuò)誤,通常由于訪問(wèn)超出數(shù)組邊界的索引值導(dǎo)致,本文就詳細(xì)的介紹了解決方法,具有一定的參考價(jià)值,感興趣的可以了解一下2024-09-09

