一、下载和安装spring框架
进入http://repo.springsource.org/libs-release-local/org/springframework/spring/4.2.0.RELEASE/下载一个spring框架,然后打开lib目录里的jar文件拷贝到项目的WEB-INF/lib目录下。
二、配置web.xml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
xsi:schemaLocation="http://www.springframework.org/schema/beans
<!-- 配置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类的实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
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页面
1
2
3
4
5
6
7
8
9
10
11
12
|
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<
html
>
<
head
>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html; charset=UTF-8"
>
<
title
>欢迎页面</
title
>
</
head
>
<
body
>
<!-- 页面可以访问Controller传递传递出来的message -->
${requestScope.message}
</
body
>
</
html
>
|