今天和大家分享下  Spring MVC  入门教程

首先还是从 HelloWorld  web 工程开始

--------------------------

1.首先创建一个Maven Web工程(此处 略啦)

2.增加项目依赖jar

此jar包版本用户可以自行决定。在pom文件增加即可

例如:我这里使用的版本为 3.0.5版本

<properties>

<spring.version>3.0.5.RELEASE</spring.version>

</properties>

         <!-- spring jars -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>

3. 编写web.xml文件

 <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <display-name>Spring Web MVC Application HelloWorld</display-name> <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/MVCHelloWord-servlet.xml</param-value>
</context-param> <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> <servlet>
<servlet-name>MVCHelloWord</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>MVCHelloWord</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping> <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> </web-app>

说明:

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 中已经明确定义

 <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <context:component-scan base-package="net.cc.controller" /> <bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/page/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean> </beans>

bean 中配置的是访问的资源 前缀、后缀 信息。

prefix 表示前缀,资源都在 WEB-INF 下 page 中

suffix 表示后缀,资源后缀 都是   .jsp  结尾

5. 编写 Java 代码

新建  net.cc.controller 包  并新建类:

 package net.cc.controller;

 import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; /**
* @author test
* @create 2014-8-15下午01:48:43
* @version 1.0
*/
@Controller
@RequestMapping("/welcome")
public class HelloController { @RequestMapping(method = RequestMethod.GET)
public String printWelcoem(ModelMap model) { model.addAttribute("message", "Hello World!");
return "hello";
}
}

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

--------------------------------------------------------------------------------------------------------

如果有描述不正确的地方  还请各位指出~~   谢谢  

Spring MVC 入门教程示例 (一)的更多相关文章

  1. spring mvc入门教程 转载自【http://elf8848.iteye.com/blog/875830】

    目录  一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 ...

  2. spring MVC入门教程

    写一个spring mvc后台传值到前台的一个小例子. 分为以下几个步骤: 1.创建web项目. 导入项目包.具体有如下: spring-aop-4.0.4.RELEASE.jar spring-be ...

  3. 【转】spring MVC入门示例(hello world demo)

    部分内容来自网络:<第二章 Spring MVC入门 —— 跟开涛学SpringMVC > 1. Spring MVC介绍 Spring Web MVC是一种基于Java的实现了Web M ...

  4. Java - Struts框架教程 Hibernate框架教程 Spring框架入门教程(新版) sping mvc spring boot spring cloud Mybatis

    https://www.zhihu.com/question/21142149 http://how2j.cn/k/hibernate/hibernate-tutorial/31.html?tid=6 ...

  5. Spring Boot入门教程1、使用Spring Boot构建第一个Web应用程序

    一.前言 什么是Spring Boot?Spring Boot就是一个让你使用Spring构建应用时减少配置的一个框架.约定优于配置,一定程度上提高了开发效率.https://zhuanlan.zhi ...

  6. Spring MVC新手教程(二)

    第一篇文章宏观讲了Spring MVC概念,以及分享了一个高速入门的样例. 这篇文章主要来谈谈Spring MVC的配置文件. 首先来谈谈web.xml: web项目启动时自己主动载入到内存中的信息, ...

  7. Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版

    一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...

  8. Spring Boot 入门教程

    Spring Boot 入门教程,包含且不仅限于使用Spring Boot构建API.使用Thymeleaf模板引擎以及Freemarker模板引擎渲染视图.使用MyBatis操作数据库等等.本教程示 ...

  9. Spring Cloud 入门教程(二): 配置管理

    使用Config Server,您可以在所有环境中管理应用程序的外部属性.客户端和服务器上的概念映射与Spring Environment和PropertySource抽象相同,因此它们与Spring ...

随机推荐

  1. 开篇 hello 内Cool超人

    经过一年时间看到asp.net mvc一直被受微软开发团队的注重.与之相比的silverlight我感觉到有点力不从心.除去silverlight第一次运行要安装Runtime不说,产品不可能只运行在 ...

  2. laravel5.2 学习之服务提供者

    契约接口:app\Contracts\LanguageContract.php <?php namespace App\Contracts; interface LanguageContract ...

  3. Py Split and Count For "PFW Impact Crusher For Sale South Africa"

    data = 'As we all know, the impact Crusher is fully used in the transportation, energy, construction ...

  4. Ubuntu kylin系统改中文系统文件名为英文

    刚装好系统,将使用语言改成了中文,结果重启后,提示是否将文件系统的名字改为新的,我一不注意,点了是...这样,在以后使用终端的时候,会有中文来干扰,所以需要改回英文. 方法如下: 输入两个命令即可: ...

  5. MVC 区分是哪按键提交FORM

    原理: 引用model(@model modelName)的画面,提交到后台的model对象,属性与前台post标签name属性对应来获取值. 前台: @model myModel @using(Ht ...

  6. Android请求返回417解决办法

    今天碰到个很奇怪的问题,APP通过代理链接服务器会收到HTTP 417错误,经过网上查找发现是由于以下代码造成: HttpParams params = new BasicHttpParams(); ...

  7. MySQL 的数值数据类型

    MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数.许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 MySQL 允许我们指定数值字段 ...

  8. SQLite判断某表是否存在

    SQLite判断表是否存在:其实很简单,只要查看sqlite_master表中是否存在这条数据就可以知道了.SELECT count(*) FROM sqlite_master WHERE type= ...

  9. RMAN 报:ORA-19504 ORA-27038

    在itpub中看到下面的问题: oracle 10g备份脚本如下run{allocate channel d1 device type disk MAXPIECESIZE=100M;crosschec ...

  10. Node.js:util.inherits 面向对象特性【原型】

    /** * Created by Administrator on 2014/9/4. */ var util = require('util'); function Base() { this.na ...