当前位置: 首页 > news >正文

案例12 Spring MVC入门案例

网页输入http://localhost:8080/hello,浏览器展示“Hello Spring MVC”。

1. 创建项目

选择Maven快速构建web项目,项目名称为case12-springmvc01。

2.配置Maven依赖

<?xml version="1.0" encoding="UTF-8"?><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/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.wfit.springmvc</groupId><artifactId>springmvc01</artifactId><version>1.0-SNAPSHOT</version><packaging>war</packaging><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties><dependencies><!--spring mvc--><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.25</version></dependency><!--servlet--><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><!--provided仅在编译期间使用,项目打包不包含这个依赖,并且这个依赖不会被传递--><scope>provided</scope></dependency></dependencies>
</project>

3. 更新Maven仓库

4. 创建java和resources目录

src.main路径下,执行new – Directory操作,选择java、resources后,执行回车键。

5. 创建Spring MVC配置文件

src.main.resources下创建spring-mvc.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"xmlns:mvc="http://www.springframework.org/schema/mvc"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 http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd"><!--开启注解--><context:component-scan base-package="com.wfit"/><!--启用mvc(适配器、映射器)--><mvc:annotation-driven></mvc:annotation-driven><!--视图解析器--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><!--逻辑视图存放位置--><property name="prefix" value="/pages/"/><!--逻辑视图后缀--><property name="suffix" value=".jsp"/></bean>
</beans>

6. 配置web.xml

在web.xml中配置DispatcherServlet。

<!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><!--配置前端控制器DispatcherServlet--><servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!--加载Spring MVC配置文件--><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring-mvc.xml</param-value></init-param><!--启动容器时候加载servlet--><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>dispatcherServlet</servlet-name><!--表示拦截所有请求--><url-pattern>/</url-pattern></servlet-mapping>
</web-app>

7. 创建HelloController类

src.main.java目录下创建com.wfit.hello目录,在com.wfit.hello目录下创建HelloController类。

@Controller
public class HelloController {@RequestMapping("/hello")public String hello(){//跳转到/pages/hello.jsp页面return "hello";}
}
8. 创

8. 创建hello.jsp页面

src.main.webapp目录下创建pages目录,在pages目录下创建hello.jsp类。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>hello</title>
</head>
<body>hello Spring MVC!
</body>
</html>

9. 部署项目

将项目部署到Tomcat。

  • 第一步

  • 第二步

  • 第三步

  • 第四步

编辑切换为居中

添加图片注释,不超过 140 字(可选)

  • 第五步

编辑切换为居中

添加图片注释,不超过 140 字(可选)

  • 第六步

编辑切换为居中

添加图片注释,不超过 140 字(可选)

10. 启动项目

​11. 访问项目

网页输入:http://localhost:8080/hello

相关文章:

案例12 Spring MVC入门案例

网页输入http://localhost:8080/hello&#xff0c;浏览器展示“Hello Spring MVC”。 1. 创建项目 选择Maven快速构建web项目&#xff0c;项目名称为case12-springmvc01。 2.配置Maven依赖 <?xml version"1.0" encoding"UTF-8"?><project xm…...

【React】精选10题

1.React Hooks带来了什么便利&#xff1f; React Hooks是React16.8版本中引入的新特性&#xff0c;它带来了许多便利。 更简单的状态管理 使用useState Hook可以在函数组件中方便地管理状态&#xff0c;避免了使用类组件时需要继承React.Component的繁琐操作。 避免使用类组件…...

VS Spy++进程信息获取

查看进程中窗口信息。 Spy使用介绍 Windows下的程序及热键监视神器——Spy Word进程获取...

Java课题笔记~ SpringMVC概述

1.1 SpringMVC简介 SpringMVC 也叫Spring web mvc。是Spring 框架的一部分&#xff0c;在Spring3.0 后发布的。 1.2 SpringMVC的优点 基于MVC 架构 基于 MVC 架构&#xff0c;功能分工明确。解耦合。 容易理解&#xff0c;上手快&#xff0c;使用简单 就可以开发一个注解…...

SOPC之NIOS Ⅱ遇到的问题

记录NIOS Ⅱ中遇到的报错 一、NIOS II中Eclipse头文件未找到 问题&#xff1a;Unresolved inclusion: "system.h"等 原因&#xff1a;编译器无法找到头文件所在路径 解决方法&#xff1a; 在文件夹中找到要添加的头文件&#xff0c;并记录下其路径&#xff0c;如…...

uniapp uni-datetime-picker 日期和光标靠右

如果想在uni-datetime-picker组件中将日期和光标靠右&#xff0c;您可以使用自定义样式来实现。首先&#xff0c;您需要在页面的样式文件中定义一个类&#xff0c;用于定制uni-datetime-picker组件的样式。例如&#xff0c;你可以在App.vue或者页面的样式文件中添加以下代码&am…...

关于axios请求中的GET、POST、PUT、DELETE的一些认知

这篇写的特别好。而本文主要从实习用途中展开&#xff0c;不专业。 浅谈HTTP中Get、Post、Put与Delete的区别 1、Get 1、目前Get禁止使用requestBody形式传递值&#xff0c;如果使用了&#xff0c;后端会一直报错&#xff0c;让你确认是否有传递参数。 2、举例&#xff0c;模…...

go-zero 是如何做路由管理的?

原文链接&#xff1a; go-zero 是如何做路由管理的&#xff1f; go-zero 是一个微服务框架&#xff0c;包含了 web 和 rpc 两大部分。 而对于 web 框架来说&#xff0c;路由管理是必不可少的一部分&#xff0c;那么本文就来探讨一下 go-zero 的路由管理是怎么做的&#xff0c…...

Springboot集成ip2region离线IP地名映射-修订版

title: Springboot集成ip2region离线IP地名映射 date: 2020-12-16 11:15:34 categories: springboot description: Springboot集成ip2region离线IP地名映射 1. 背景2. 集成 2.1. 步骤2.2. 样例2.3. 响应实例DataBlock2.4. 响应实例RegionAddress 3. 打开浏览器4. 源码地址&…...

智能驾驶系列报告之一:智能驾驶 ChatGPT时刻有望来临

原创 | 文 BFT机器人 L3 功能加速落地&#xff0c;政策标准有望明确 L2 发展日益成熟&#xff0c;L3 功能加速落地。根据市场监管总局发布的《汽车驾驶自动化分级》与 SAE发布的自动驾驶分级标准&#xff0c;自动驾驶主要分为 6 个级别&#xff08;0 级到 5 级&#xff0c;L0 …...

设计HTML5文档结构

定义清晰、一致的文档结构不仅方便后期维护和拓展&#xff0c;同时也大大降低了CSS和JavaScript的应用难度。为了提高搜索引擎的检索率&#xff0c;适应智能化处理&#xff0c;设计符合语义的结构显得很重要。 1、头部结构 在HTML文档的头部区域&#xff0c;存储着各种网页元…...

vue echarts中按钮点击后修改值 watch数据变化后刷新图表

1 点击按钮 {feature: {myBtn1: {show: true,title: 反转Y轴,showTitle: true,icon: path://M512 0A512 512 0 1 0 512 1024A512 512 0 0 0 512 0M320 320V192h384v128zM128 416V288h256v128zM320 704V576h384v128zM128 800V672h256v128z,onclick: () > {dataSetting.rever…...

React antd tree树组件 - 父子节点没有自动关联情况下 - 显示半选、全选状态以及实现父子节点互动

实现的效果图如下&#xff1a; 如Ant Design Vue 中所示&#xff0c;并没有提供获取半选节点的方法&#xff0c;当设置checked和checkStrictly时&#xff0c;父子节点也不再自动关联了 前提&#xff1a;从后端可以获取的数据分别是完整的树型数据、所有选中的节点数据&#…...

优漫动游 大厂需要什么样的ui设计师呢?

通常来说大公司UI设计的流程主要是这样的&#xff1a;创意-头脑风暴-策划方案-交互设计&评审-美术设计&评审-开发实施&#xff0c;不过实际上大多数公司都有自己的一套流程&#xff0c;源于公司的基因、公司组织体系、公司领导风格。一起了解大厂需要什么样的ui设计师呢…...

TiDB Bot:用 Generative AI 构建企业专属的用户助手机器人

本文介绍了 PingCAP 是如何用 Generative AI 构建一个使用企业专属知识库的用户助手机器人。除了使用业界常用的基于知识库的回答方法外&#xff0c;还尝试使用模型在 few shot 方法下判断毒性。 最终&#xff0c;该机器人在用户使用后&#xff0c;点踩的比例低于 5%&#xff0…...

uniapp 使用canvas画海报(微信小程序)

效果展示&#xff1a; 项目要求&#xff1a;点击分享绘制海报&#xff0c;并实现分享到好友&#xff0c;朋友圈&#xff0c;并保存 先实现绘制海报 <view class"data_item" v-for"(item,index) in dataList" :key"index"click"goDet…...

TiDB 应急运维脚本,更加方便的管理TiDB集群

TiDB 应急运维脚本&#xff0c;更加方便的管理TiDB集群 使用方法 使用方法&#xff1a;[tidblocalhost ~]$ which tiup ~/.tiup/bin/tiup编辑脚本&#xff0c;MYSQL_PASSWD 和 PORT 根据实际替换 [tidblocalhost ~]$ vi ~/.tiup/bin/ti#version 1.1 #author guanguanglei ##…...

第二部分:AOP

一、AOP简介 AOP(Aspect Oriented Programming)面向切面编程&#xff0c;一种编程范式&#xff0c;指导开发者如何组织程序结构。 AOP是OOP&#xff08;面向对象编程&#xff09;的进阶版。 作用&#xff1a;在不改变原始设计的基础上为其进行功能增强。 spring理念&#x…...

分享一组天气组件

先看效果&#xff1a; CSS部分代码&#xff08;查看更多&#xff09;&#xff1a; <style>:root {--bg-color: #E9F5FA;--day-text-color: #4DB0D3;/* 多云 */--cloudy-background: #4DB0D3;--cloudy-temperature: #E6DF95;--cloudy-content: #D3EBF4;/* 晴 */--sunny-b…...

微服务中RestTemplate访问其他服务返回值转换问题

背景&#xff1a; 接收一个springcloud项目&#xff0c;UI模块访问其他服务的接口&#xff0c;返回数据统一都是使用fastjson进行转换&#xff0c;但是新开发了几个新模块之后发现fastjson很多bug&#xff08;各种内存溢出&#xff09;&#xff0c;但是很多地方已经重度依赖fa…...

为什么你的RAG应用训练成本比同行高3.8倍?(向量索引冗余、Embedding缓存泄漏、Prompt编译失效三大黑洞)

第一章&#xff1a;AI原生软件研发成本优化实战技巧 2026奇点智能技术大会(https://ml-summit.org) AI原生软件的研发成本常被低估&#xff0c;尤其在模型训练、推理服务部署与持续迭代阶段。合理利用工具链、架构分层与资源调度策略&#xff0c;可在不牺牲质量的前提下显著降…...

# 012、AutoSAR CP基础软件(BSW)模块详解:复杂驱动(CDD)

一、从一次诡异的CAN信号丢失说起 上个月在量产项目上碰到个怪事:ECU休眠唤醒后,某个关键CAN信号偶尔会丢一帧。抓Trace、看DBC、查配置表,忙活两天没定位。最后发现是信号处理函数里有个状态机没在唤醒后复位,而这个函数恰恰放在了一个“自定义驱动模块”里——没错,就是…...

@RepeatSubmit 注解实现逻辑

RepeatSubmit 是若依里防止表单重复提交的注解&#xff0c;底层基于 AOP Redis 分布式锁 实现&#xff0c;逻辑非常经典&#xff0c;面试常问。 下面给你一套能直接背、能直接讲的完整实现逻辑。 一、核心作用 给接口加上该注解&#xff0c;规定时间内重复请求会被拦截&#x…...

3步掌握微信数据解密:本地安全解密方案的终极指南

3步掌握微信数据解密&#xff1a;本地安全解密方案的终极指南 【免费下载链接】WechatDecrypt 微信消息解密工具 项目地址: https://gitcode.com/gh_mirrors/we/WechatDecrypt 当微信聊天记录被加密存储在数据库中&#xff0c;你是否曾感到束手无策&#xff1f;那些珍贵…...

从“词元”到“符元”:Token中文定名的再思考——以概念精确性与长期稳定性为视角

近日&#xff0c;全国科学技术名词审定委员会发布公告&#xff0c;推荐将人工智能领域中的“Token”译为“词元”&#xff0c;并面向社会试用。随后&#xff0c;《人民日报》发文《专家解读token中文名为何定为“词元”》&#xff0c;对这一命名从专业角度进行了系统阐释。文中…...

D4案例2 Nginx/Java服务自定义镜像部署及(NAS/NFS文件存储)动静分离实现

D4案例2 Nginx/Java服务自定义镜像部署及(NAS/NFS文件存储)动静分离实现 第一步:重新创建干净的命名空间 kubectl get namespace linux36 -o json | jq .spec.finalizers=[] | kubectl replace --raw /api/v1/namespaces/linux36/finalize -f - kubectl delete deploy -n linu…...

Transformer+RoPE如何让GVHMR处理超长视频?深入解读Relative Transformer的设计与实现

TransformerRoPE如何让GVHMR处理超长视频&#xff1f;深入解读Relative Transformer的设计与实现 在计算机视觉领域&#xff0c;处理长序列视频数据一直是个棘手的问题。想象一下&#xff0c;当你需要分析一段长达数小时的监控视频或完整电影片段中的人体动作时&#xff0c;传统…...

工业智能体:解锁制造业数字化转型密码,小白也能轻松掌握的AI应用(收藏版)

文章探讨了中国制造业在数字化转型中面临的挑战与机遇&#xff0c;强调工业智能体作为融合感知、认知、决策、执行、协同与进化能力的自主软件实体&#xff0c;是解决数据孤岛、AI场景适配性不足、系统集成壁垒及价值闭环难题的关键。文章详细阐述了工业智能体的定义、核心能力…...

一句话出全套商品图,这才是电商人该用的 AI 神器

几年前大家都在喊不出海就出局&#xff0c;那是抢地盘的时代。现在地盘抢完了&#xff0c;拼的是谁的锄头更快。过去一年&#xff0c;生成式AI从尝鲜变成了标配&#xff0c;从选品预测到广告投放&#xff0c;AI已经渗透进了生意的每一个毛细血管。但要说冲击最大、体感最强的&a…...

从夯到拉,锐评大模型岗位!收藏这份进阶指南,小白程序员也能抓住AI红利!

本文详细解析了大模型领域的不同岗位&#xff0c;从底层架构的夯岗位到应用开发的拉岗位&#xff0c;涵盖了预训练工程师、Infra工程师、基座模型优化、后训练、多模态、应用开发工程师、数据工程师、风控/安全、模型评估和Prompt工程师等。文章强调了当前大模型领域的人才缺口…...