今天和大家分享下 Spring MVC 入门教程
首先还是从 HelloWorld web 工程开始
--------------------------
1.首先创建一个Maven Web工程(此处 略啦)
2.增加项目依赖jar
此jar包版本用户可以自行决定。在pom文件增加即可
例如:我这里使用的版本为 3.0.5版本
3.0.5.RELEASE
1
2
3 org.springframework
4 spring-core
5 ${spring.version}
6
7
8 org.springframework
9 spring-web
10 ${spring.version}
11
12
13 org.springframework
14 spring-webmvc
15 ${spring.version}
16
3. 编写web.xml文件
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
5 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
6
7 Spring Web MVC Application HelloWorld
8
9
10 contextConfigLocation
11 /WEB-INF/MVCHelloWord-servlet.xml
12
13
14
15 org.springframework.web.context.ContextLoaderListener
16
17
18
19 MVCHelloWord
20 org.springframework.web.servlet.DispatcherServlet
21 1
22
23
24 MVCHelloWord
25 /
26
27
28
29 index.jsp
30
31
32
说明:
1. context-param 节点:
此节点中配置的是需要加载的配置文件路径 按照上面的示例 应用程序会去加载 WEB-INF 目录下 MVCHelloWorld 配置文件
2 servlet节点:
和普通的J2EE工程中的Servlet没有本质区别 只是 servlet-class 中使用的是Spring提供的Class 而已
注:
servlet 中 servlet-name 名称 和 context-param 中 param-name的名字是有关系的。
servlet-name 名字 是 param-name名字的前缀 ,而 param-name中还要增加 -servlet
4.编写 MVCHelloWorld-servlet.xml 配置文件
此文件放置路径在 之前的 web.xml 中已经明确定义
1
2 xmlns:context="http://www.springframework.org/schema/context"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="5 http://www.springframework.org/schema/beans
6 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
7 http://www.springframework.org/schema/context
8 http://www.springframework.org/schema/context/spring-context-3.0.xsd">
9
10
11
12
13
15
16 /WEB-INF/page/
17
18
19 .jsp
20
21
22
23
bean 中配置的是访问的资源 前缀、后缀 信息。
prefix 表示前缀,资源都在 WEB-INF 下 page 中
suffix 表示后缀,资源后缀 都是 .jsp 结尾
5. 编写 Java 代码
新建 net.cc.controller 包 并新建类:
1 packagenet.cc.controller;2
3 importorg.springframework.stereotype.Controller;4 importorg.springframework.ui.ModelMap;5 importorg.springframework.web.bind.annotation.RequestMapping;6 importorg.springframework.web.bind.annotation.RequestMethod;7
8 /**
9 *@authortest10 * @create 2014-8-15下午01:48:4311 *@version1.012 */
13 @Controller14 @RequestMapping("/welcome")15 public classHelloController {16
17 @RequestMapping(method =RequestMethod.GET)18 publicString printWelcoem(ModelMap model) {19
20 model.addAttribute("message", "Hello World!");21 return "hello";22 }23 }
HelloController 类 与一般Java类没有什么区别,不需要实现或继承Spring中类
@Controller 表示此类是一个控制器
@RequestMapping 表示 /welcome 用户访问此路径时 会进入此类
printWelcome类中 只是给model中 增加一个信息 key是 message value是 Hello World 并return 一个hello
这个 hello最终会变成 hello.jsp 因为在之前的配置文件中已经确定了 后缀都是 .jsp 结尾 所以 用户需要编写一个 hello.jsp文件
这个 hello.jsp文件 放置的目录也已经在之前的配置文件中定义好。 在 WEB-INF 下 page 中 用户在此目录下创建 hello.jsp 文件即可
当用户想在 界面上获取 控制器中的内容 可以用 ${} 即可
按照上面的代码示例, 如果想在 hello 界面上 获取信息 可使用 ${message} 即可打印出 Hello World
----------------------------------------------------
至此 HelloWorld 工程编写完成 用户可直接部署到 Tomcat 等皆可
访问路径 http://IP:port/工程名称/welcome
--------------------------------------------------------------------------------------------------------
如果有描述不正确的地方 还请各位指出~~ 谢谢 😄