我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Spring MVC注解式开发案例分析

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Spring MVC注解式开发案例分析

这篇文章主要讲解了“Spring MVC注解式开发案例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Spring MVC注解式开发案例分析”吧!

项目案例

用 RequestMapping 注解式开发开发设置一个项目,实现在浏览器中输入 http://localhost:8080/springmvc02/first/show,输出网页内容 “我的第一个注解式 Spring MVC 开发程序!”。

实现步骤

项目创建添加依赖

在 IDea 中新建一个项目 springmvc02,创建如下图所示的目录结构:

Spring MVC注解式开发案例分析

项目创建好之后,打开 pom.xml 文件,添加依赖内容如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>cn.kgc.springmvc02</groupId>  <artifactId>springmvc02</artifactId>  <packaging>war</packaging>  <version>1.0-SNAPSHOT</version>  <name>springmvc02 Maven Webapp</name>  <url>http://maven.apache.org</url><!--第1步:添加需要的 JAR 包-->  <dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>4.12</version>      <scope>test</scope>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-webmvc</artifactId>      <version>5.3.19</version>    </dependency>  </dependencies>  <build>    <finalName>springmvc02</finalName>  </build></project>

配置web.xml文件

在 web.xml 文件里配置 DispatcherServlet 前端控制器,项目 webapp/WEB-INF 目录里的 web.xml 文件配置如下:

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app>  <display-name>Archetype Created Web Application</display-name>  <!--第2步:配置前端控制器-->  <servlet>    <servlet-name>springmvc</servlet-name>    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>    <init-param>      <param-name>contextConfigLocation</param-name>      <param-value>classpath:spring-config.xml</param-value>    </init-param>  </servlet>  <servlet-mapping>    <servlet-name>springmvc</servlet-name>    <url-pattern>/</url-pattern>  </servlet-mapping></web-app>

客户端发出的 URL 请求都会被 DispatcherServlet(前端控制器)拦截 ,DispatcherServlet 再交给 spring-config.xml 进行处理。

配置spring-config.xml文件

配置 handlerMapping 处理器映射器。

在 class="lazy" data-src/main/resources 目录下新建一个 xml 文件,命名为 spring-config.xml,输入如下关键内容:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:context="http://www.springframework.org/schema/context"       xsi:schemaLocation="http://www.springframework.org/schema/beans       http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">    <!--配置处理器映射器-->    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean></beans>

上面代码意思是创建一种类型为 RequestMappingHandlerMapping 的处理器映射器,即定义一种 “请求/响应” 映射规则,客户端的 Url 请求如果跟某一个 bean 的 name 属性匹配,则由该 bean 的 class 属性指定的控制器 Controller 类进行响应处理。

配置 HandlerAdapter 处理器适配器。

配置完处理器映射器后,接着在 spring-config.xml 中插入如下内容(插入位置在处理器映射器下方,节点 </beans> 的上方):

 <!--配置处理器适配器-->    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>

该代码的意思是创建一种处理器适配器,类型为 RequestMappingHandlerAdapter,用于对上述指定的控制器 Controller 类的 handleRequest() 方法的调用与执行。

配置 视图解析器。

视图解释器 用来解释控制器返回的逻辑视图的真实路径,这样更方便,易于扩展。在 spring-config.xml 中输入代码:

    <!--配置视图解析器-->    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">        <!--前缀配置-->        <property name="prefix" value="/"></property>        <!--后缀配置-->        <property name="suffix" value=".jsp"></property>    </bean>

上面代码的意思是控制器 Controller 返回的逻辑视图,需要加上 前缀 “/” 和 后缀 “.jsp”,最后拼接成完整的视图路径。比如本例中,Controller 返回的视图为 “show”,视图解释器将为它加上前缀后缀,最终构成完整路径为 “/ show.jsp”。视图解释器不是非要不可,如果没有视图解释器,则 Controller 返回的视图必须打上完整路径的视图名称。

配置 组件扫描器

<!--开启包扫描  base-package  设置需要扫描的包 -->    <context:component-scan base-package="cn.kgc.springmvc02"></context:component-scan>

编写一个Controller类

在 cn.kgc.springmvc02.controller 下新建一个类 TestController,代码如下:

package cn.kgc.springmvc02.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controller@RequestMapping("first")public class TestController {    @RequestMapping("show")    private String show(){        return "show";    }}

第一个注解 @Controller 表示将本类定义为一个控制器类,这个类无须再实现 Controller 接口。

第二个注解 @RequestMapping(“first”) 表示定义一种 “请求/响应” 的映射关系,即如果客户端浏览器发出 “first” 的 url 请求则由该注解下面的 show() 方法来响应,即浏览器通过 url 路径+“first/show” 就可访问到本方法,url 请求能够直接映射到控制器类的方法级别。这样一个简单的注解,就轻松的取代了之前的处理器映射器和 bean 的配置,大大减少了配置工作量。

创建响应页面

在 webapp 目录下创建文件 show.jsp 页面,内容如下:

<%--  Created by IntelliJ IDEA.  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head>    <title>Title</title></head><body>    <h2>我的第一个注解式 Spring MVC 开发程序!</h2></body></html>

运行并测试程序

启动运行 Tomcat,打开浏览器后,运行 “http://localhost:8080/springmvc02/first/show”,运行效果如下:

Spring MVC注解式开发案例分析

感谢各位的阅读,以上就是“Spring MVC注解式开发案例分析”的内容了,经过本文的学习后,相信大家对Spring MVC注解式开发案例分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Spring MVC注解式开发案例分析

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Spring MVC注解式开发案例分析

这篇文章主要讲解了“Spring MVC注解式开发案例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Spring MVC注解式开发案例分析”吧!项目案例用 RequestMapping
2023-07-05

Spring注解驱动开发之属性赋值的示例分析

这篇文章给大家分享的是有关Spring注解驱动开发之属性赋值的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、@Value注解在Person的属性上使用@Value注解指定注入值public class
2023-06-15

Spring注解解析之@ImportResource的示例分析

这篇文章给大家分享的是有关Spring注解解析之@ImportResource的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、ImportResource1.1 定义包和类首先定义一个不会被Compo
2023-06-15

Spring Ioc和DI注解实例分析

今天小编给大家分享一下Spring Ioc和DI注解实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.Spring配
2023-06-29

spring常用注解的示例分析

这篇文章给大家分享的是有关spring常用注解的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1 、将普通类加入容器形成Bean的注解日常开发中主要使用到的定义Bean的注解包括(XML方式配置bean暂
2023-05-30

spring注解之@profile的示例分析

这篇文章给大家分享的是有关spring注解之@profile的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。spring中@profile与maven中的profile很相似,通过配置来改变参数。例如在开
2023-05-31

Spring Boot 发送邮件功能案例分析

邮件服务简介邮件服务在互联网早期就已经出现,如今已成为人们互联网生活中必不可少的一项服务。那么邮件服务是怎么工作的呢?如下给出邮件发送与接收的典型过程:1、发件人使用SMTP协议传输邮件到邮件服务器A;2、邮件服务器A根据邮件中指定的接收者
2023-05-30

Spring Boot应用开发的示例分析

这篇文章主要介绍了Spring Boot应用开发的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Spring Boot是由Pivotal团队提供的全新Spring开发
2023-06-20

Java注解入门案例代码分析

这篇文章主要介绍“Java注解入门案例代码分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java注解入门案例代码分析”文章能帮助大家解决问题。Talk is cheap, show me the
2023-07-05

Spring Boot中Web综合开发示例分析

本篇内容主要讲解“Spring Boot中Web综合开发示例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Spring Boot中Web综合开发示例分析”吧!Web 开发Spring Boo
2023-06-02

spring boot基于注解声明式事务配置的示例分析

小编给大家分享一下spring boot基于注解声明式事务配置的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!事务配置1、配置方式一1)开启spring事务管理,在spring boot启动类添加注解@Enable
2023-06-20

Spring纯注解开发模式让开发简化更简化

Spring3.0引入了纯注解开发的模式,框架的诞生是为了简化开发,那注解开发就是简化再简化。Spring的特性在整合MyBatis方面体现的淋漓尽致哦
2022-11-13

Spring声明式事务注解的源码分析

本文小编为大家详细介绍“Spring声明式事务注解的源码分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“Spring声明式事务注解的源码分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1、@EnableTr
2023-07-02

windows下vscode+vs2019开发JNI的案例分析

这篇文章给大家分享的是有关windows下vscode+vs2019开发JNI的案例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。JNI全称是Java Native Interface(Java本地接口)单词
2023-06-15

Spring@Autowired注解与自动装配的示例分析

这篇文章主要介绍了Spring@Autowired注解与自动装配的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1 配置文件的方法我们编写spring 框架的代码时候
2023-05-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录