SpringMVC 简介

  SpringMVC 也叫 Spring web mvc ,属于表现层的框架。SpringMVC 是 Spring框架的一部分,是在Spring3.0后发布的

第一个SpringMVC 程序

  1.导入jar包

  2.注册中央调度器

    a)<load-on-startup/>  值大于等于0时,表示这个servlet随服务器启动

    b)<url-pattern/>    不能写为 /*,最好也不要写为 /,建议写为 *.do的形式

      /*  所有的请求都拦截下来,JSP页面的跳转也会拦截下来,此时是没有对应的处理器的,会报404

      /   无法对静态资源进行访问

    c) 配置文件与名称(这里必须要设置一下,不然会根据servlet的name 生成不同的文件名称,然后去找这个文件)   

<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>

  3.创建SpringMVC配置文件(springmvc.xml)

  4.定义处理器

    

 public class MyController implements Controller {

     @Override
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
System.out.println("1");
ModelAndView mv = new ModelAndView(); //这句话相当于request.setAttribute
mv.addObject("message", "Hello SpringMVC!"); //mv.setViewName("/WEB-INF/jsp/hello.jsp");
//在对视图解析器进行修改之后,视图名就可以这样写
mv.setViewName("hello");
return mv;
} }

    1.需实现Controller 接口,Struts2也是一样,Acrion也要继承ActionSupport

    2.ModelAndView 类中的addObject() 方法用于向其Model中添加数据。Model底层为一个Map

  5.注册处理器

    定义了自己的处理器后,需要在springmvc.xml中注册,

    处理器的id属性值为请求uri,当客户端提交该请求时,会访问class指定的这个处理器,默认调用 handleResult方法

 <!-- 注意,这里  bean 的 id 一定要加上 '/'  不能是   hello.do  -->
<bean id="/hello.do" class="com.springmvc.handlers.MyController"/>

  6.定义目标页面

  7.修改视图解析器的注册

    

 <!-- 配置视图解析器 -->
<!-- 字符串拼接 出 访问的 web 资源 ,但是并不好用-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>

  8.修改处理器

 //mv.setViewName("/WEB-INF/jsp/hello.jsp");
//在对视图解析器进行修改之后,视图名就可以这样写
mv.setViewName("hello");

1.SpringMVC 概述的更多相关文章

  1. SpringMVC系列(一)SpringMVC概述和搭建SpringMVC的第一个helloWord入门程序

    一.SpringMVC 概述 • Spring为展现层提供的基于MVC设计理念的优秀的Web框架,是目前最主流的MVC框架之一 • Spring3.0 后全面超越 Struts2,成为最优秀的 MVC ...

  2. SpringMVC听课笔记(一:SpringMVC概述)

    地址 :https://www.bilibili.com/video/av14907450 版本:4.x 概述: 概要: 一:SpringMVC概述 二:SpringMVC的 HelloWorld 三 ...

  3. SpringMVC 概述

    1. SpringMVC 概述 1) Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的MVC 框架之一 .MVC,M:model,模型层,指的是项目中的实体Ja ...

  4. SpringMVC——概述

    Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一 Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架 Spring MV ...

  5. SpringMVC(一) SpringMVC概述

    SpringMVC为展现层提供的基于MVC设计理念的优秀的WEB框架,是目前主流的MVC框架之一.Spring 3.0之后,超越Struts2成为最优秀的MVC框架. SpringMVC通过一套MVC ...

  6. SpringMVC概述

    1. SpringMVC是什么 SpringMVC 是 Spring 框架内置的 MVC 的实现.SpringMVC 就是一个 Spring 内置的 MVC 子框架 Spring 子框架:意味着 Sp ...

  7. springmvc概述及框架原理

    一. 前言 MVC不是框架而是一种设计模式. MVC的全名Model View Controller,即模型-视图-控制器的缩写,这是一种设计模式,而非架构.MVC它强制的使用应用程序的输入.处理.和 ...

  8. SpringMVC—概述

    mvc容器的实例化: http://blog.csdn.net/lin_shi_cheng/article/details/50686876 Spring的启动过程: 1: 对于一个web应用,其部署 ...

  9. 阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_05.入门程序之入门代码编写

    先把默认的index.jsp删掉.默认的index.jsp没有jsp的声明 ok webapp文件夹下new一个 起名叫做index.新建的页面有jsp的头 创建控制器类 java下新建一个class ...

随机推荐

  1. app怎么获取package与active name

    1.aapt dump badging apk名称 2.adb logcat | grep START 或者 adb shell "logcat | grep START" 然后在 ...

  2. redis watch 加 事务实现秒杀

    <?php   //redis watch 加 事务实现秒杀  $redis = new redis();  $result = $redis->connect('10.10.10.119 ...

  3. Pedro domingos

    Dear Professor:           I am a university student in China and study on MLN recently;             ...

  4. Flutter 接口签名MD5加密

    第一步 更新pubspec.yaml crypto: ^+ 第二步 先引入头文件: import 'dart:convert'; import 'package:convert/convert.dar ...

  5. 客户端热更新框架之UI热更框架设计(下)

    上一篇笔者介绍了关于什么是热更新,为什么需要热更新的技术文章.本篇就专门针对UI框架的热更新功能实现部分展开讨论,讨论的重点是热更新如何与UI框架进行结合? 现在笔者把设计“UI热更新框架”的整体设计 ...

  6. Windows安装zabbix-agent4.0

    1.在Windows系统中的C盘,新建一个zabbix目录C:/zabbix2.先下载zabbix-agent的安装包https://assets.zabbix.com/downloads/4.0.1 ...

  7. ORACLE-JDK非收费版本下载链接

    这个链接下可以下载oracleJDK的所有版本 https://www.oracle.com/technetwork/java/javase/archive-139210.html 其中jdk192之 ...

  8. 多路径IO

    多路径IO(MPIO)是一个微软架构,通过在存储设备和windows操作系统之间提供一个备用数据路径,来减轻主机总线适配器(HBA)故障的影响,MPIO能够支持多达32个备用路径,来增加Windows ...

  9. leveldb单元测试之宏定义源码剖析

    前言 leveldb 是一个库,没有 main() 函数入口, 故非常难理清其中的代码逻辑.但好在库中有非常多的单元测试代码,帮助读者理解其中的各个模块的功能.然而,测试代码个人觉得一开始看时非常费解 ...

  10. hanlp分词工具应用案例:商品图自动推荐功能的应用

    本篇分享一个hanlp分词工具应用的案例,简单来说就是做一图库,让商家轻松方便的配置商品的图片,最好是可以一键完成配置的. 先看一下效果图吧: 商品单个推荐效果:匹配度高的放在最前面 这个想法很好,那 ...