搭建web项目

发表时间:2017-07-18 18:53:38 浏览量( 14 ) 留言数( 0 )

学习目标:

1、使用maven搭建web项目

2、掌握jetty的maven插件。


学习过程:

一、使用Eclipse新建一个maven的web项目

1、新建一个web项目

attcontent/e4a939cf-77b9-4fa0-a7e4-c70daec2d672.png

也是一样输入基本信息就可以了。

attcontent/c3808821-abe3-49fd-8d85-8ff85a22dac4.png

项目建立后和普通的java项目不同,我们可以打开pom.xml文件看一下.打包方式为war包

   <packaging>war</packaging>

部署后war的名称,就是访问的项目路径

   <finalName>shopweb</finalName>

2、依赖需要javax.servlet和javax.servlet.jsp,修改pom.xml。

		<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>

注意scope都是provided,因为这些包最后由web 容器提供。

3、maven web项目的目录结构

因为我们建立的项目的目录只有一个,所以我们需要自己建立maven的标准的目录结构,目录如下;

attcontent/33b0b33b-e68b-4afd-98aa-8588b9fd3f87.png

4、新建的项目的web.xml也只是写着2.3版本的,我们也可以相应的修改

<?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" version="3.0"
metadata-complete="true">


  <welcome-file-list>
     <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

</web-app>

二、使用插件部署项目

我们知道web项目必须部署到web服务器才能运行。相信大家马上就想到tomcat了,不过这里我们介绍一个更加简单的一个servlet容器,就是jetty,开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接。同时maven提供了jetty的插件,我们不需要另外下载和安装jetty了。使用更加简单。

1、修改pom.xml,添加jetty插件

<build>
<finalName>manweb</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.3.4.v20151007</version>
<configuration>
<scanIntervalSeconds>5</scanIntervalSeconds>
<stopPort>9999</stopPort>
<webAppConfig>
<contextPath>/manweb</contextPath>
</webAppConfig>
<httpConnector>
<port>8080</port>
</httpConnector>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>

点击Run as,maven Bulider...,然后输入jetty:run,记得在eclipse 前面不需要输入mvn的。

attcontent/a2fa6e2f-31d1-4cd2-995e-7ec9317584b9.png

第一次是需要下载jetty插件的时间回比较长一点。

看到控制台:

[INFO] Started ServerConnector@66ba7e45{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}

[INFO] Started @3968ms

[INFO] Started Jetty Server

就表示启动成功了。输入网址http://localhost:8080/manweb

就可以看到页面了。我们的web开发环境就成功了。


三、使用tomcat插件

    当然也许我们会更加爱习惯使用tomcat作为web服务器,maven也有对应的tomcat插件。下面的内容我其实并不推荐大家这样使用,因为我们完全可以使用像以前一样使用eclipse的部署方式,直接部署到tomcat中。所以大家如果不喜欢这样方式,下面的内容就看一下就可以了,不需要操作了。

1、添加tomcat插件,修改pom.xml文件,把上面的jetty注释了。

   <build>

<pluginManagement>
<plugins>
 <plugin>

<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<server>tomcat</server>
<username>admin</username>
<password>admin</password>
<url>http://localhost:8080/manager/html</url>

</configuration>

</plugin> 

<!-- <plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.2.2-SNAPSHOT</version>
<configuration>
每2秒的间隔扫描一次,实现热部署
<scanIntervalSeconds>10</scanIntervalSeconds>
</configuration>
</plugin> -->

</plugins>

</pluginManagement>

<finalName>shop</finalName>
</build>

2、为tomcat添加用户

注意上面第一步的server、username和password属性,这里对应的tomact管理员的用户名和密码,所以我们需要为tomcat添加对应的用户名和密码,这里我们使用的tomcat版本是tomcat 6.X版,打开tomcat-users.xml文件添加用户如下:

  <user username="admin" password="admin" roles="manager"/>

当然在上面我们直接在pom.xml中添加了用户名和密码,如果你不想每一个项目都添加在这里,那么你也可以修改setting.xml文件的server,代码如下:

<server>
    <id>tomcat</id>
    <username>admin</username>
    <password>admin</password>
</server>

3、执行部署命令,先启动tomcat服务器,然后打开Run as ,maven build...,添加一下命令就可以运行。

打开浏览器输入以下网址:http://localhost:8080/manweb