IDEA創(chuàng)建Maven工程Servlet的詳細(xì)教程
IDEA創(chuàng)建Maven工程servlet
Servlet(Servlet Applet),全稱(chēng)Java Servlert,用于開(kāi)發(fā)動(dòng)態(tài)web資源的技術(shù)。是用Java編寫(xiě)的服務(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提供的一門(mén)開(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è)類(lèi),要根據(jù)這個(gè)類(lèi)進(jìn)行相應(yīng)的擴(kuò)展開(kāi)發(fā)。
開(kāi)發(fā)流程如下:
- 編寫(xiě)一個(gè)java類(lèi),繼承HttpServlet類(lèi)
- 重寫(xiě)HttpServlet類(lèi)的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類(lèi)代碼如下:
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)目依賴(lài)的jar包
Maven中央倉(cāng)庫(kù)
可以去Maven中央倉(cāng)庫(kù)獲取Servlet依賴(lài)的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)入父工程依賴(lài)
- 使用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ù)據(jù)結(jié)構(gòu)與算法系列精講之?dāng)?shù)組
數(shù)組是有序的元素序列,若將有限個(gè)類(lèi)型相同的變量的集合命名,那么這個(gè)名稱(chēng)為數(shù)組名。組成數(shù)組的各個(gè)變量稱(chēng)為數(shù)組的分量,也稱(chēng)為數(shù)組的元素,有時(shí)也稱(chēng)為下標(biāo)變量。數(shù)組是在程序設(shè)計(jì)中,為了處理方便, 把具有相同類(lèi)型的若干元素按有序的形式組織起來(lái)的一種形式2022-02-02Java中documentHelper解析xml獲取想要的數(shù)據(jù)
本文主要介紹了Java中documentHelper解析xml獲取想要的數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02Java將Exception信息轉(zhuǎn)為String字符串的方法
今天小編就為大家分享一篇Java將Exception信息轉(zhuǎn)為String字符串的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10詳解如何將springboot項(xiàng)目導(dǎo)出成war包
這篇文章主要介紹了詳解如何將springboot項(xiàng)目導(dǎo)出成war包,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10如何使用Java 8 中的 Stream 遍歷樹(shù)形結(jié)構(gòu)
這篇文章主要介紹了使用Java 8中的Stream遍歷樹(shù)形結(jié)構(gòu),我們可以使用Java8中的Stream流一次性把數(shù)據(jù)查出來(lái),然后通過(guò)流式處理,我們一起來(lái)看看,代碼實(shí)現(xiàn)為了實(shí)現(xiàn)簡(jiǎn)單,就模擬查看數(shù)據(jù)庫(kù)所有數(shù)據(jù)到List里面,需要的朋友可以參考下2023-08-08JAVA基于PDF box將PDF轉(zhuǎn)為圖片的實(shí)現(xiàn)方法
這篇文章主要介紹了JAVA基于PDF box將PDF轉(zhuǎn)為圖片的操作方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-07-07java通過(guò)客戶(hù)端訪問(wèn)服務(wù)器webservice的方法
這篇文章主要介紹了java通過(guò)客戶(hù)端訪問(wèn)服務(wù)器webservice的方法,涉及java創(chuàng)建與調(diào)用webservice的相關(guān)技巧,需要的朋友可以參考下2016-08-08Hibernate+JDBC實(shí)現(xiàn)批量插入、更新及刪除的方法詳解
這篇文章主要介紹了Hibernate+JDBC實(shí)現(xiàn)批量插入、更新及刪除的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Hibernate與JDBC針對(duì)數(shù)據(jù)庫(kù)的批量操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-11-11