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

㈡Eclipse/MyEclipse使用Maven配置SpringMVC

2017-09-27 16:40 411 查看
请先确认项目已经配置maven

可以参考我的上一篇文章 ㈠Eclipse/MyEclipse使用Maven构建JavaEE项目

打开pom.xml文件

注:是项目根目录下的pom.xml,不是target目录下的pom.xml文件,如图



选中Dependencies标签,点击Add按钮.如下图所示



填写Group Id,Artifact Id,Version(选填),可以查看官网spring-framework,由于我已经查过了,因此直接填写.

关于Version : 此博客写于2017.09.27,此时的官网稳定版本为4.3.11,若时间过久请点击官网链接查看最新的稳定版本号

Group Id : org.springframework

Artifact Id : spring-webmvc

Version : 4.3.11.RELEASE

填写完成之后,点击OK

修改web.xml文件,添加servlet和servlet-mapping节点.

此web.xml是根据上一篇文章的web.xml修改而来,各位可以参照对比

<?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" id="WebApp_ID" version="3.0">
<!--display-name为创建的项目名称-->
<display-name>TestMVC</display-name>
<welcome-file-list>
<!--项目默认启动页面-->
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<!--添加下列配置项-->
<!-- 此配置会自动去WEB-INF下寻找'servlet-name'-servlet.xml文件,此处配置的为springmvc,即会自动寻找springmvc-servlet.xml文件 -->
<servlet>
<!--servlet-name的值可以随意填写,只要保持上下一致即可-->
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>

<servlet-mapping>
<!--servlet-name的值可以随意填写,只要保持上下一致即可-->
<servlet-name>springmvc</servlet-name>
<!--"/"意思为拦截所有的请求-->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>


6、 在WEB-INF下创建springmvc-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:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> 
<!-- 配置扫描的包 -->
<!-- 此配置会自动扫描per.lcz.demo包中所有含有注解的类 -->
<context:component-scan base-package="per.lcz.demo.*" />

<!-- 注册HandlerMapper、HandlerAdapter两个映射类,将请求映射到类和方法中 -->
<mvc:annotation-driven />

<!-- 访问静态资源 -->
<!-- 因为配置的spring是拦截所有请求,所以需要配置它,来让静态资源通过(如js, css文件等) -->
<mvc:default-servlet-handler />

<!-- 配置视图解析器 -->
<!-- 将Controller类返回的视图名加上配置的前后缀进行展示 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 前缀 -->
<property name="prefix" value="/WEB-INF/page/"></property>
<!-- 后缀 -->
<property name="suffix" value=".jsp"></property>
</bean>

</beans>


至此,SpringMVC环境配置完成,接下来测试是否配置成功.

在WEB-INF下创建page文件夹(根据springmvc-servlet.xml中配置的前缀决定),在其中新建一个hello.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></title>
</head>
<body>
<h2>Hello SpringMVC!</h2>
</body>
</html>


在src/main/java文件夹中,创建per.lcz.demo包(由springmvc-servlet.xml配置的base-package的值决定,该包下的文件都能被扫描到),在其中创建DemoController.Java文件,并加上注解

package per.lcz.demo;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/demo")
public class DemoController {

/*
* 当请求index时会映射到此方法中,返回的字符串 hello会被配置拼接为 WEB-INF/page/hello.jsp,并展示出来
*/
@RequestMapping("/index")
public String index() {
return "hello";
}
}


clean一下项目,在Tomcat中将项目重新部署一遍.运行项目,打开浏览器,访问地址 : http://localhost:8080/TestMVC/demo/index,看见如下界面,则证明配置成功.

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