一、导入 jar 包

二、配置 web.xml 文件

<servlet>
  <servlet-name>dispatcherServlet</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/springmvc-servlet.xml</param-value>
  </init-param>
</servlet>
<servlet-mapping>
  <servlet-name>dispatcherServlet</servlet-name>
  <url-pattern>*.action</url-pattern>
</servlet-mapping>

说明:

配置了 SpringMVC 的核心处理器类 org.springframework.web.servlet.DispatcherServlet ,其中 url-pattern 指定了要过滤的请求。

需要注意的是:DispatcherServlet 默认加载 /WEB-INF/servletName-servler.xml 的 SpringMVC Config 文件,可以通过初始化参数修改其位置和名称。

三、添加 SpringMVC Config 文件(springmvc-servlet.xml)

<context:component-scan base-package="com.nucsoft.springmvc.handler"/><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix" value="/WEB-INF/views/"/>
  <property name="suffix" value=".jsp"/>
</bean>

说明:

(1)指定要扫描的基包

(2)指定视图解析器:prefix + viewName + suffix

四、添加目标类

/*** @author solverpeng* @create 2016-08-01-19:19*/
@Controller
public class HelloWorldHandler {@RequestMapping("/hello")public String hello() {System.out.println("hello world...");return "hello";}}

说明:

(1)请求处理类必须在 IOC 容器中

(2)@RequestMapping 用来映射请求,其中 value 属性指定映射的 url。可以作用类上,相当于 namespace 的作用。

(3)返回值最终会被解析为 ModelAndView 对象。结合视图解析器,返回到视图。

五、SpringMVC 作为一个表示层的框架,是继 Stuts2 之后的又一个优秀的框架,且有 Spring 整个体系作用支撑,使用起来感觉更加的优雅。

学习 SpringMVC时,要明白它的核心处理器,以及表示层要解决的问题,

如:获取原生的Servlet资源问题、映射问题、参数获取问题、模型注入问题、格式化问题、数据校验问题、返回值处理问题、视图渲染问题、防止表单重复提交问题、文件上传下载问题等等。

以及 SpringMVC 整个的运行流程,以及请求的生命周期问题。能否通过自定义的方式来实现我们想要但是 SpringMVC 还没有解决的问题。

对比于 Struts2,有什么优点、缺点。

SpringMVC基础——一个简单的例子相关推荐

  1. JPA基础(二)之实现一个简单 JPA 例子

    实现一个简单 JAP 例子 需要学习 JPA,首先需要把环境搭起来,这里选择实现 JPA 规范的持久层框架是 Hibernate,版本为 5.0.7.Final,并且采用 maven 进行依赖包的管理 ...

  2. .net中的对象序列化(1): 序列化是什么, 以及一个简单的例子

    1. 为什么需要序列化,什么是序列化 对于一个程序来说, 使用到的对象都是存在于内存中的.如果想保存这些对象的运行时状态, 或者需要在不同进程或者网络间传递对象,就需要序列化. 序列化就是讲运行中的对 ...

  3. 一个简单的例子看java线程机制

    一个简单的例子看java线程机制 作者: zyf0808 发表日期: 2006-03-26 11:20 文章属性: 原创 复制链接 import java.util.*; public class T ...

  4. blockchain 区块链200行代码:在JavaScript实现的一个简单的例子

    blockchain 区块链200行代码:在JavaScript实现的一个简单的例子 了解blockchain的概念很简单(区块链,交易链块):它是分布式的(即不是放置在同一台机器上,不同的网络设备上 ...

  5. pycharm安装scrapy失败_Scrapy ——环境搭配与一个简单的例子

    在我刚接触爬虫的时候就已经听过Scrapy大名了,据说是一个很厉害的爬虫框架,不过那个时候沉迷于Java爬虫.现在终于要来揭开它神秘的面纱了,来一起学习一下吧 欢迎关注公众号:老白和他的爬虫 1.环境 ...

  6. java继承类型转换_#java 一个简单的例子理解java继承、成员函数重写、类型转换...

    一个简单的例子理解java继承.成员函数重写.类型转换 1.继承简介 举一个简单的例子:笔分为很多种,比如毛笔.钢笔.圆珠笔等等,这些笔都有一些相同的属性比如长度.笔迹的粗细等等:但他们也有不同的特点 ...

  7. 类模板与运算符重载(一个简单的例子)

    类模板与运算符重载(一个简单的例子) 标签(空格分隔): C++ 算法竞赛 下面是一段简单的代码,表示我们建立了一个类模板Vector,可以看做是对STL中vector的简单实现. 为了让这个Vect ...

  8. 一个简单的例子,学习自定义注解和AOP

    转载自   一个简单的例子,学习自定义注解和AOP 记得今年年初刚开始面试的时候,被问的最多的就是你知道Spring的两大核心嘛?那你说说什么是AOP,什么是IOC?我相信你可能也被问了很多次了. 1 ...

  9. antlr4例子_ANTLR和网络:一个简单的例子

    antlr4例子 网络上的ANTLR:为什么? 我开始在MS-DOS上编写我的第一个程序. 因此,我非常习惯在自己的机器上安装工具. 但是在2016年,网络无处不在,因此那里也可能需要我们的语言. 可 ...

最新文章

  1. 【BZOJ 1202】 [HNOI2005]狡猾的商人(枚举区间也可行)
  2. 微软“影子系统”Windows SteadyState 末日将至
  3. 深入Atlas系列:客户端网络访问基础结构示例(1) - 编写并使用自定义的WebRequestExecutor...
  4. ipynb是什么文件_数据科学家的神器:为什么大家都用Kaggle?
  5. Java“地铁”表(JavaFX)
  6. Android 全局悬浮按钮,悬浮按钮点击事件
  7. Linux下导出MySQL为SQL文件_在linux命令下导出导入.sql文件的方法
  8. DirectX SDK (June 2010)安装错误S1023,解决方法
  9. NOIP 2014 无线网络发射器选址
  10. 【bzoj2654】tree(二分+MST)
  11. hydra-字典暴力破解
  12. 九、ISO 27000 术语定义及相关资料
  13. SpringBoot的完整学习
  14. 推荐《现在,发现你的优势》
  15. 怎么把手机录音转换成mp3?
  16. 主成分分析与因子分析
  17. c语言调试程序错误,如何调试C程序的语法错误和逻辑错误
  18. iostat 第一次数据信息不正确/过滤第一条数据
  19. 【日拱一卒行而不辍20220921】自制操作系统
  20. 蚁群算法(实验分析)

热门文章

  1. 18、计算机图形学——BRDF与渲染方程
  2. 灰度重心法原理与实现
  3. memcached客户端_对比Memcached和Redis,谁才是适合你的缓存?
  4. Linux系统介绍(二)文件系统结构
  5. Linux命令:MySQL系列之五--SELECT单表查询、多表查询升级及删除,插入
  6. 基于AgileEAS.NET SOA 平台SAAS架构技术的开源分销ERP系统-SmartERP.NET下载配置说明
  7. Android界面性能调优手册
  8. TFS 2008 中文版安装记录
  9. iis 发布MVC HTTP错误 403.14
  10. javascript数字千分位格式化