在开始项目之前我们需要一个很好的项目管理工具——Maven
因此先让我们来学习一下Maven
一.创建项目
1.Eclipse中用Maven创建项目

maven-1

2.继续Next

maven-2

3.选maven-archetype-webapp后,next

maven-3

4.填写相应的信息,Packaged是默认创建一个包,不写也可以

maven-4

5.创建好项目后,目录如下:

maven-5

至此,项目已经创建完毕,下边可是配置。

二.项目配置
1.添加Source Folder
Maven规定,必须创建以下几个Source Folder

src/main/resources

src/main/Java

src/test/resources

src/test/Java

添加以上的Source Folder

maven-6

maven-7

创建好后的目录如下:

maven-8

2.配置Build Path

maven-9

3.设定4个文件夹的输出Output folder,双击修改

maven-10

分别修改输出路径为

src/main/resources  对应  target/classes

src/main/java  对应  target/classes

src/test/resources  对应  target/test-classes

src/test/java  对应  target/test-classes

4.修改后如下图

maven-11

5.设定Libraries

maven-12

maven-13

6.配置完Build Path后目录如下:

maven-14

7.将项目转换成Dynamic Web Project
在项目上右键Properties

在左侧选择 Project Facets,单击右侧的 ”Convert faceted from “

maven-15

8.修改Java为你当前项目的JDK,并添加Dynamic Web Module ,最后单击”Further Configuration available“ 链接:

maven-16

9.修改Content directory 为 src/main/webapp ,单击OK:

maven-17

10.设置完Content directory,ok后再次点击前一界面ok,完成转换成Dynamic Web Project项目

maven-18

11.设置部署程序集(Web Deployment Assembly)
在项目上右键单击,选择Properties,在左侧选择Deployment Assembly

maven-19

 

12.设置部署时的文件发布路径
1,我们删除test的两项,因为test是测试使用,并不需要部署。
2,设置将Maven的jar包发布到lib下。
Add -> Java Build Path Entries -> Maven Dependencies -> Finish

设置完成后如图

maven-20

 

ok后,web项目就创建完毕了,目录机构如图

maven-21

 

运行后访问工程成功!

maven-22

下一章将测试一个servlet

三、应用servlet

1.首先修改pom.xml文件,添加servlet依赖

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.lei.demo</groupId>
  <artifactId>maven-web-demo</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>maven-web-demo Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
      <!-- JUnit配置 -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <!-- 添加Servlet -->  
    <dependency>    
        <groupId>javax.servlet</groupId>    
        <artifactId>servlet-api</artifactId>    
        <version>2.5</version>    
        <scope>provided</scope>    
    </dependency>
  </dependencies>
  <build>
    <finalName>maven-web-demo</finalName>
  </build>
</project>

修改完保存后,项目会从Maven仓库中自动添加servlet-api-2.5.jar包的引用,如果仓库中没有,会自动下载。

引用后见图。

maven-23

2.新建一个Servlet
在src/main/java下创建一个Servlet,ServletDemo

package com.sulei.demo;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class ServletDemo
 */
public class ServletDemo extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    public ServletDemo() {
        super();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");  
        response.setContentType("text/html;charset=utf-8");
        
        String action = request.getParameter("action");  
        if("login_input".equals(action)) {  
            request.getRequestDispatcher("login.jsp").forward(request , response);  
        } else if("login".equals(action)) {  
            String name = request.getParameter("name");  
            String password = request.getParameter("password");  
              
            System.out.println("name->" + name + ",password->" + password);
        }
    }

}

3.修改Web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <javaee:display-name>Archetype Created Web Application</javaee:display-name>
  <servlet>
    <javaee:description></javaee:description>
    <javaee:display-name>ServletDemo</javaee:display-name>
    <servlet-name>ServletDemo</servlet-name>
    <servlet-class>com.sulei.demo.ServletDemo</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>ServletDemo</servlet-name>
    <url-pattern>/demo</url-pattern>
  </servlet-mapping>
</web-app>

 

4.创建index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
    <p>用Maven创建web项目,测试Servlet</p>
    <a href="demo?action=login_input">登录(demo?action=login_input)</a>
</body>
</html>

 

5.创建login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
    <form action="demo?action=login" method="post">  
        Name:<input type="text" name="name" />  
        Password:<input type="password" name="password" />  
              
        <input type="submit" value="登录" />  
    </form>  
</body>
</html>

 

OK,可以测试一下

maven-24

maven-25

maven-26

原文地址:http://blog.csdn.net/anhuidelinger/article/details/46494375

如果你喜欢我的文章欢迎关注我的博客:http://www.bubblyyi.com

打赏

2 Comments

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注