SpringMVC 概述

  • Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的 MVC 框架之一
  • Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架
  • Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。
  • 支持 REST 风格的 URL 请求
  • 采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性

HelloWorld

步骤:

  • 加入 jar 包
  • 在 web.xml 中配置 DispatcherServlet
  • 加入 Spring MVC 的配置文件
  • 编写处理请求的处理器,并标识为处理器
  • 编写视图

HelloWorld:加入 jar 包

jar 包:

  • commons-logging-1.1.3.jar
  • spring-aop-4.0.0.RELEASE.jar
  • spring-beans-4.0.0.RELEASE.jar
  • spring-context-4.0.0.RELEASE.jar
  • spring-core-4.0.0.RELEASE.jar
  • spring-expression-4.0.0.RELEASE.jar
  • spring-web-4.0.0.RELEASE.jar
  • spring-webmvc-4.0.0.RELEASE.jar

HelloWorld:配置 web.xml

配置 DispatcherServlet :DispatcherServlet 默认加载 /WEB-INF/<servletName-servlet>.xml 的 Spring 配置文件, 启动 WEB 层 的 Spring 容器。可以通过 contextConfigLocation 初始化参数自定义配置文件的位置和名称。

<servlet>
<servlet-name>helloworld</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-mvc.xml</param-value>
</init-param>
</servlet> <servlet-mapping>
<servlet-name>helloworld</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>

HelloWorld:创建 Spring MVC 配置文件

  • 配置自动扫描的包

    <context:component-scan base-package="com.nemo.springmvc">
    </context:component-scan>
  • 配置视图解析器:视图名称解析器:将视图逻辑名解析为: /WEB-INF/pages/.jsp

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/pages/"></property>
    <property name="suffix" value=".jsp"></property>
    </bean>

HelloWorld:创建请求处理器类

@Controller
public class HelloWorld {
@RequestMapping("/helloSpringMVC")
public String helloworld() {
System.out.println("helloworld...");
//返回的字符串将会被视图解析器接收,加上前后缀变为视图路径
return "success";
}
}

web.xml

<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>

url

springmvc-1/helloWorld.action

Handler

@Controller
public class HelloWorldController {
@RequestMapping("/helloWorld")
public String helloWolrd(){
System.out.println("HelloWorld SpringMVC");
return "success";
}
}

SpringMVC 配置文件

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name=“prefix” value=“/WEB-INF/view/"></property>
<property name="suffix" value=".jsp"></property>
</bean>

实际的物理视图

/WEB-INF/view/success.jsp

【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. 1.SpringMVC 概述

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

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

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

随机推荐

  1. R语言画图常用参数

    plot(x,xlab = "degree",ylab = "number of nodes",main = "mRNA degree distrib ...

  2. MTK8766 LK GPIO初始化状态设置分析

    问题来源是M.2 Dongle的LED灯在kernel起来之前就亮了,kernel起来之后又初始化成熄灭状态.通过排查硬件规格书.GPIO表格,大概判定是前期软件初始化不正确造成的.通过观察串口打印的 ...

  3. 记录下uniapp的请求封装

    请求封装就是经常见的事但是从来没有记录过,今天来记录一下简单的封装 首先封装自己的域名,可以和封装写在一起,但是最好单独写一个独立的js文件 这边就以一个域名为例 let baseUrl='域名地址' ...

  4. linux 安装 Ollama 框架

    概述 Ollama 是一款旨在简化大语言模型(LLM)本地部署的工具,支持 Windows.Linux 和 MacOS 系统.它提供了一个用户友好的环境,让开发者可以轻松地运行和调优如 Qwen.Ll ...

  5. 「V 曲闲谈」《一半的梦》——“模糊”&「NOIP 2022」未游之记

      好久没写闲谈了欸.现在雨兔正坐在家里的台式机前,开着腾讯会议监控自习,但是她悄悄打开记事本,bilibili 单曲循环<一半的梦>(系统 Vol=2,兔耳朵真好使).   感谢 Rai ...

  6. docker 使用centos镜像运行javaweb

    Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都听说过它.Docker 是一种"轻量级"容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公 ...

  7. Websocket详细讲解

    因为websocket的内容比较多,所以准备分解将基础篇主要讨论一下websocket的概念,websocket和http协议的区别,客户端的websocket以及服务端的websocket,中间穿插 ...

  8. Peewee:Python 简洁强大的 ORM 框架

    在 Python 的开发世界中,数据库操作是至关重要的一环. 今天介绍的 Peewee 作为一款简洁且功能强大的 ORM(对象关系映射)框架,为开发者提供了高效便捷的数据库交互方式. 1. Peewe ...

  9. Codeforces 1749E Cactus Wall 题解 [ 紫 ] [ 01 BFS ] [ 图论建模 ] [ 构造 ] [ adhoc ]

    一道很好的思维题,被教练碾压了. 观察 首先从题目给的样例入手: 5 5 ..... ..... ..... ..... ..... 这种情况最终的答案是: YES ....# ...#. ..#.. ...

  10. P3306 [SDOI2013] 随机数生成器 题解

    传送门 题解 思路 由题目中可知: \[\large x_i \equiv ax_{i-1}+b\pmod{p} \] 可以得出: \[\large t=x_{n+1} \equiv a^nx_1+b ...