溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet

發(fā)布時(shí)間:2020-10-28 02:18:39 來(lái)源:億速云 閱讀:364 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章為大家展示了IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

IDEA創(chuàng)建Maven工程servlet

Servlet(Servlet Applet),全稱Java Servlert,用于開發(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提供的一門開發(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ò)展開發(fā)。
開發(fā)流程如下:

  • 編寫一個(gè)java類,繼承HttpServlet類
  • 重寫HttpServlet類的doGet方法和doPost方法
  • 配置web.xml文件,或者使用注解對(duì)servlet進(jìn)行配置。servlet的配置指定了哪個(gè)servlet響應(yīng)前端的處理請(qǐng)求。

 一、使用骨架創(chuàng)建Maven的web工程

IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet

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

Servlet目錄

IDEA實(shí)現(xiàn)創(chuàng)建Maven工程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具體配置

IDEA實(shí)現(xiàn)創(chuàng)建Maven工程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>才開始學(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)

IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet
IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet

Servlet完整的pom配置文件如下:

<&#63;xml version="1.0" encoding="UTF-8"&#63;>

<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)目

IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet
IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet
查看頁(yè)面
IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet
至此IDEA創(chuàng)建Maven工程Servlet完成

上述內(nèi)容就是IDEA實(shí)現(xiàn)創(chuàng)建Maven工程Servlet,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI