一、下载和安装spring框架
进入http://repo.springsource.org/libs-release-local/org/springframework/spring/4.2.0.RELEASE/下载一个spring框架,然后打开lib目录里的jar文件拷贝到项目的WEB-INF/lib目录下。
二、配置web.xml文件
Spring MVC 提供了一个名为org.springframework.web.servlet.DispatcherServlet的Servlet充当前端控制器,所有的请求驱动都围绕这个DispatcherServlet来分派请求。配置代码如下:
<servlet>
<!-- servlet名称 -->
<servlet-name>springmvc</servlet-name>
<!-- servlet对应的类 -->
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<!-- 当前servlet的参数信息 -->
<init-param>
<!-- contextConfigLocation是参数名称,该参数的值包括Spring MVC的配置文件路径-->
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/springmvc-config.xml</param-value>
</init-param>
<!-- 在web应用启动时立即加载Servlet -->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 让Spring MVC的前端控制器拦截所有请求 -->
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
三、配置Spring MVC的Controller
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd">
<!-- 配置Handle,映射“/hello” 请求-->
<bean name="/hello" class="org.fkit.controller.HelloController" />
<!-- 处理映射器将bean的name作为URL进行查找,需要在配置Handle是指定name(即URL) -->
<bean
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<!-- SimpleControllerHandlerAdapter是一个处理器适配器,所有处理适配器都需要实现 HandlerAdapter接口-->
<bean
class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/ >
<!-- 视图解析器 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver"/ >
<beans>
三、Controller类的实现
package com.ibs.controller;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class HelloController {
private static final Log logger = LogFactory.getLog(HelloController.class);
// handleRequest是Controller接口必须实现的方法。
// 该方法的参数是对应请求的HttpservletRequest和HttpservletResponse.
// 该方法必须返回一个包含视图名或视图名和模型的ModelAndView对象
@RequestMapping(value="/hello")
public ModelAndView hello() {
// 生成日志
logger.info("hello,world!!");
// 创建一个ModelAndView 对象
ModelAndView mv = new ModelAndView();
// 添加模型数据,可以是任意POJO对象
mv.addObject("message","Another hello world...");
// 设置逻辑视图名,视图解析器会根据该名字解析到具体的视图页面
mv.setViewName("/WEB-INF/content/welcome.jsp");
// 返回这个ModelAndView 对象
return mv;
}
}
四、View页面
<%@ 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>
<!-- 页面可以访问Controller传递传递出来的message -->
${requestScope.message}
</body>
</html>