您的位置:首页 > 编程语言 > Java开发

手把手教你在Eclipse上创建一个Maven+Spring MVC的HelloWord项目

2016-11-25 15:33 627 查看
         使用了框架进行开发以后,我们用到的jar包会越来越多,每次都手动下载然后拷贝进项目的话,这样会比较麻烦,而且有时候不能很好地处理jar包传递依赖的问题。庆幸的是,Maven出现了,它可以极大地方便了我们对依赖的管理。只要填写好pom.xml这个配置文件,那么Maven会自动为我们下载该jar包及其所依赖的jar包,所以这里我创建一个基于Maven的Spring
MVC项目。

        创建Maven项目,首先得安装好Maven环境。如未安装好环境,可参考文章:Maven的安装和配置

下面是创建的详细步骤:

1、新建项目













2、解决项目报错(没有报错则跳过此步骤)

新建了项目后,我发现项目中报了以下的错。



现解决一下。如果没有报错的话,就忽略此步骤。

解决方法:

(1)右击项目名 -> Buid Path -> Configure Build Path,

(2)选择Libraries选项卡,点击Add Library -> Server Runtime ,

(3)选择一个已建好的tomcat,没有建立tomcat的,请先配置好tomcat。

(4)点击 finish, 可看到如下截图。



点击Apply之后,正常情况下,可以看到项目的红叉已消失。

然后切换到Order and Export 选项:



点击上图的OK之后,可以看到,缺失的资源文件src/main/java和src/test/java已经有了。

注意:作为Maven项目必须包含以下4个资源文件夹,如果没有,需要手动创建。



新建资源文件夹的步骤:





4个资源文件建好之后,还需设置正确的Output folder。





3、更改配置文件pom.xml

这是Maven的主要配置文件,可以在里面配置项目所需要的jar包。

<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.hello</groupId>
<artifactId>HelloSpringMVC</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>HelloSpringMVC Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springVersion}</version>
</dependency>
</dependencies>
<build>
<finalName>HelloSpringMVC</finalName>
</build>
<properties>
<springVersion>4.2.3.RELEASE</springVersion>
</properties>
</project>



4、更改配置文件web.xml






<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<display-name>HelloSpringMVC</display-name>

<!-- 前端控制器 -->
<servlet>
<servlet-name>spring-mvc</servlet-name> <!-- 名称,真实的文件名需要在这个名字后面加上-servlet后缀 -->
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- DispatcherServlet路径,照写 -->

<!-- 这里可以设置前端控制器的路径,如果这一步注释掉,则默认前端控制器的路径为:/WEB-INF/[servlet-name]-servlet.xml
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/configs/spring-mvc-servlet.xml</param-value> 这里配置前端控制器的路径
</init-param>
-->

<load-on-startup>1</load-on-startup>
</servlet>

<!-- 拦截所有请求 -->
<servlet-mapping>
<servlet-name>spring-mvc</servlet-name> <!-- 这里的名字要和上面的servlet-name统一 -->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>

5、新建前端控制器配置文件

因为这里使用的是默认的路径,所以只需要在WEB-INF目录下创建前端控制器文件。

又因为在web.xml中配置的名称是spring-mvc,所以新建的文件名是spring-mvc-servlet。





6、添加spring-mvc-servlet.xml的内容

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.2.xsd">

<!-- 扫描路径 -->
<context:component-scan base-package="com.springmvc.controller" >
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>

<!-- 配置根视图 -->
<mvc:view-controller path="/" view-name="index"/>

<!-- 激活基于注解的配置 @RequestMapping, @ExceptionHandler,数据绑定 ,@NumberFormat ,
@DateTimeFormat ,@Controller ,@Valid ,@RequestBody ,@ResponseBody等 -->
<mvc:annotation-driven />

<!-- 静态资源配置 -->
<mvc:resources location="/assets/" mapping="/assets/**"></mvc:resources>

<!-- 视图层配置 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>

</beans>



7、添加Controller类





书写HelloController.java的内容

package com.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

//url: http://localhost:8080/HelloSpringMVC/hello/mvc
//告诉DispatcherServlet相关的容器, 这是一个Controller,
@Controller

//类级别的RequestMapping,告诉DispatcherServlet由这个类负责处理URL。
//HandlerMapping依靠这个标签来工作
@RequestMapping(value="/hello")
public class HelloController {

//方法级别的RequestMapping, 限制并缩小了URL路径匹配,同类级别的标签协同工作,最终确定拦截到的URL由那个方法处理
//并指定访问方法为GET
@RequestMapping(value="/mvc",method=RequestMethod.GET)
public String HelloWorld(Model model){

model.addAttribute("message","Hello Spring MVC!!!"); //传参数给前端

//视图渲染,/WEB-INF/view/HelloWorld.jsp
return "HelloWorld"; //页面的名称,根据此字符串会去寻找名为HelloWorld.jsp的页面
}
}
8、添加页面

新建视图文件夹



 


  

新建页面



注意加.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>HelloSpringMVC</title>
</head>
<body>
<h1>message:${message}</h1>
<h1>this is my spring mvc</h1>
</body>
</html>



9、解决错误(无错的可以跳过此步骤)

可以看到,自从添加了pom.xml的内容以后,项目是一直有红叉的,现在基本上Spring MVC的配置已经完成了,那么就来解决一下。

(1)右击项目名->Properties(在最下方) ->拖动左侧栏,找到Deployment Assembly ->移除多余部分。



注意:这里一定要确保Maven Dependencies在 Web Deployment Assembly 中,否则无法访问controller中的url。

(2)将Maven Dependencies从Build Path中移除。



(3)进入Configure Build Path,重新添加Maven Dependencies这个Library













正常情况下,项目已经没有不报错了。

10、运行项目











上面的这个controller对应的页面如下:



至此,基于Maven+Spring MVC的HelloWord项目已创建完毕。

源码下载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息