本文通過一個例子來介紹利用maven來構建一個web項目。開發工具:intellij idea。
一、新建maven項目
此處選擇:Create from archetype。表示從已有的maven模版中創建項目,本次選擇maven-archetype-webapp模版,選擇該模版后,生成的項目會自帶webapp所需要的文件。比較方便。當然也可以不選擇這個選項,直接創建maven空白項目,后續手動添加web需要的文件。
填寫本項目的maven坐標
二、配置maven項目結構
最終生成maven項目
上面的項目只包含了web-app所需要的目錄結構和基本的maven項目元素:pom。標準的maven項目結構如下:
完善后的項目目錄:
三、添加一個Servlet
這個Servlet功能非常簡單:輸出一句話。
package com.VEVb.kmpp;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.io.PRintWriter;public class WebAppServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println( "WebAppServlet Executed" ); out.flush(); out.close(); }}
上面的Servlet有對J2EE的依賴,需要在pom中增加對j2ee的依賴。
<dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-servlet_3.0_spec</artifactId> <version>1.0</version></dependency>
配置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> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>WebApp</servlet-name> <servlet-class>com.VEVb.kmpp.WebAppServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>WebApp</servlet-name> <url-pattern>/simple-servlet</url-pattern> </servlet-mapping></web-app>
四、運行web app
web項目的運行可以通過tomcat來實現,但是既然已經使用了maven可以通過一個maven插件來實現這個功能:jetty(Jetty 是一個開源的servlet容器,它為基于Java的web容器,例如jsp和servlet提供運行環境)。
運行jetty:將命令行定位到當前項目的目錄下面,輸入如下命令:
得如下結果:
這個時候jetty已經啟動。
在瀏覽器中輸入:http://localhost:8080/web-app/。
這個界面就是web-app默認的index.jsp頁面。
上面顯示的是默認輸出,上面已經定義了一個簡單的servlet且配置到了web.xml中。這個時候也可以運行。在瀏覽器中輸入:http://localhost:8080/web-app/simple-servlet
上面頁面的輸出就是之前在WebAppServlet中所實現的功能。
至此,一個maven web項目已經建立完畢,且運行成功。
新聞熱點
疑難解答