#Eclipse中SpringMVC框架环境搭建
由于我们的团队项目最终决定使用SpringMvc来搭建后端的框架,所以我学习了SpringMvc环境的搭建以及其他的一些有关的知识。本篇技术博客是学习了尚硅谷的springmvc视频后,同时参考了网上的Eclipse中SpringMVC框架环境搭建写下的,在本篇博客的截图中也做了一些注释说明,以便理解其中的代码。
1. 在开始之前,你需要先再eclipse中安装开发spring的插件,这里就不详细多说了,具体参考百度经验: http://jingyan.baidu.com/article/219f4bf798e0cfde442d3831.html
2. 在安装完spring开发插件后,打开Eclipse,新建一个动态的web工程。
2.1 这里的名字自己取,我的是springmvc-,然后点击finish。
3. 下载Spring的jar包。地址是:https://maven.springframework.org/release/org/springframework/spring/,这里我用的是之前电脑上下载的(spring-framework-4.1.2.RELEASE)。
3.1 下载完并解压后,将所需要的jar包复制,并贴到springmvc-/WebContent/WEB-INF/lib中,如图。
4. 配置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_2_5.xsd"
id="WebApp_ID" version="2.5">
<!-- 配置DispatcherServlet -->
<!-- The front controller of this Spring Web application, responsible for handling all application requests -->
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 配置DispatcherServlet 的一个初始化参数,配置SpringMVC 配置文件的位置和名称 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Map all requests to the DispatcherServlet for handling -->
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
5. 可以看到web.xml配置中的classpath:springmvc.xml,这时候需要创建一个同名的springmvc.xml文件。
5.1 在src下新建一个springmvc.xml
5.2 选择框中打钩的选项,然后finish。
6. 在src下创建一个包。
6.1 在包下创建一个class,这里我写了个HelloWorld(日常)。
HelloWorld里面的内容为:
package com.wsq.springmvc.handler;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloWorld {
/**
* 1.使用RequestMapping 注解来映射请求的URL
* 2.返回值会通过视图解析器解析为实际的物理视图,对于InternalResourceViewResolver 视图解析器,会做如下的解析
* 通过 prefix + returnVal +后缀 这样的方式得到实际的物理视图,然后做转发操作。
*
* /WEB-INF/views/success.jsp
*/
@RequestMapping("/helloworld")
public String hello(){
System.out.println( "hello world");
return "success";
}
}
因为包已经创建好,所以这时就可以在springmvc.xml中添加扫描的包。
<!-- 配置自定扫描的包 -->
<context:component-scan base-package="com.wsq.springmvc"></context:component-scan>
7. 写一个请求(index.jsp)。
内容为:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<a href="helloworld">Hello World</a>
</body>
</html>
这时候要配置视图解析器,也就是解析请求。打开springmvc.xml,加上:
<!-- 配置视图解析器:如何把handler 方法返回值解析为实际的物理视图 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>