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

搭建springmvc项目

什么是springmvc

MVC它是一种设计理念。把程序按照指定的结构来划分: Model模型 View视图 Controller控制层

springmvc框架是spring框架的一个分支。它是按照mvc架构思想设计的一款框架。

springmvc的主要作用: 接收浏览器的请求数据,对数据进行处理,然后返回页面进行显示.

1.创建maven的web工程,引入依赖        spring-webmvc

2.创建spring配置文件

        【1】包扫描

                <context:component-scan base-package="com.ghx"/>

        【2】开启注解驱动

                <mvc:annotation-driven/>

    【3】   <!-- 放行静态资源 -->

<mvc:default-servlet-handler/>

【4】视图解析器

 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

         <!-- 前缀-->

        <property name="prefix"    value="/views/"/>

       <!-- 后缀-->

           <property  name="suffix"    value=".jsp"/>

 </bean>

3.注册公共servlet    DispatcherServlet

<servlet><servlet-name>springmvc01</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc01.xml</param-value></init-param>
</servlet><servlet-mapping><servlet-name>springmvc01</servlet-name><url-pattern>/</url-pattern></servlet-mapping>

4.编写controller类

@Controller
public class HelloController {@RequestMapping("/index")public String index(){System.out.println("你好");return "/hello";}
}

5.接受页面传来的大量参数,日期格式

使用实体类,实体类的属性要和参数的名字一致

日期格式需使用注解

@DateTimeFormat(pattern = "yyyy-MM-dd")

6.解决乱码 

使用过滤器

@WebFilter(urlPatterns = "/*")
public class EncodingFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {servletRequest.setCharacterEncoding("utf-8");servletResponse.setCharacterEncoding("utf-8");filterChain.doFilter(servletRequest,servletResponse);}@Overridepublic void destroy() {}
}

相关文章:

搭建springmvc项目

什么是springmvc MVC它是一种设计理念。把程序按照指定的结构来划分: Model模型 View视图 Controller控制层 springmvc框架是spring框架的一个分支。它是按照mvc架构思想设计的一款框架。 springmvc的主要作用: 接收浏览器的请求数据&#xff0c;对数据进行处理&#xff0c;…...

Springboot3.x配置类(Configuration)和单元测试

配置类在Spring Boot框架中扮演着关键角色&#xff0c;它使开发者能够利用Java代码定义Bean、设定属性及调整其他Spring相关设置&#xff0c;取代了早期版本中依赖的XML配置文件。 集中化管理&#xff1a;借助Configuration注解&#xff0c;Spring Boot让用户能在一个或几个配…...

java后端环境配置

因为现在升学了&#xff0c;以前本来想毕业干java的&#xff0c;很多java的环境配置早就忘掉了&#xff08;比如mysql maven jdk idea&#xff09;&#xff0c;想写个博客记录下来&#xff0c;以后方便自己快速搭建环境 JAVA后端开发配置 环境配置jdkideamavenMySQLnavicate17…...

手眼标定工具操作文档

1.手眼标定原理介绍 术语介绍 手眼标定&#xff1a;为了获取相机与机器人坐标系之间得位姿转换关系&#xff0c;需要对相机和机器人坐标系进行标定&#xff0c;该标定过程成为手眼标定&#xff0c;用于存储这一组转换关系的文件称为手眼标定文件。 ETH&#xff1a;即Eye To …...

WebGIS城市停水及影响范围可视化实践

目录 前言 一、相关信息介绍 1、停水信息的来源 2、停水包含的相关信息 二、功能简介 1、基础小区的整理 2、停水计划的管理 三、WebGIS空间可视化 1、使用到的组件 2、停水计划的展示 3、影响小区的展示 4、实际效果 四、总结 前言 城市停水&#xff0c;一个看似…...

无管理员权限 LCU auth-token、port 获取(全网首发 go)

一&#xff1a; 提要&#xff1a; 参考项目&#xff1a; https://github.com/Zzaphkiel/Seraphine 想做一个 lol 查战绩的软件&#xff0c;并且满足自己的需求&#xff08;把混子和大爹都表示出来&#xff09;&#xff0c;做的第一步就是获取 lcu token &#xff0c;网上清一色…...

【数字花园】数字花园(个人网站、博客)搭建经历教程

目录 写在最最前面数字花园的定义第一章&#xff1a;netlify免费搭建数字花园相关教程使用的平台步骤信息管理 第二章&#xff1a;本地部署数字花园数字花园网站本地手动部署方案1. 获取网站源码2.2 安装 Node.js 3. 项目部署3.1 安装项目依赖3.2 构建项目3.3 启动http服务器 4…...

python模拟练习第一期

问题一 如果一个数 p 是个质数&#xff0c;同时又是整数 a的约数&#xff0c;则 p 称为 a的一个质因数。 请问 2024 有多少个质因数&#xff1f; 步骤 1: 分解 2024 首先&#xff0c;2024 是偶数&#xff0c;说明可以被 2 整除。我们从 2 开始进行除法分解&#xff1a; 202…...

Xcode

info.plist Appearance Light 关闭黑暗模式 Bundle display name 设置app名称&#xff0c;默认为工程名 Location When In Use Usage Description 定位权限一共有3个key 1.Privacy - Location When In Use Usage Description 2.Privacy - Location Always and When In U…...

RabbitMQ安装延迟消息插件(mq报错)

之前启动一个springboot的单体项目&#xff0c;一直mq的错误&#xff0c;即便我更新了最新版本的mq&#xff0c;还是报错。 后来才发现&#xff0c;项目使用了延时队列&#xff0c;是需要单独下载延时插件的。 1如果判断mq有没有延时队列插件【没有x-delayed-message】 2下载…...

es 3期 第15节-词项查询与跨度查询实战运用

#### 1.Elasticsearch是数据库&#xff0c;不是普通的Java应用程序&#xff0c;传统数据库需要的硬件资源同样需要&#xff0c;提升性能最有效的就是升级硬件。 #### 2.Elasticsearch是文档型数据库&#xff0c;不是关系型数据库&#xff0c;不具备严格的ACID事务特性&#xff…...

iOS Delegate模式

文章目录 一、 Delegate 模式的概念二、Delegate 的实现步骤步骤 1: 定义一个协议&#xff08;Protocol&#xff09;步骤 2: 在主类中添加一个 delegate 属性步骤 3: 实现协议的类遵守协议并实现方法步骤 4: 设置 delegate 三、Delegate 模式的特点四、Delegate 模式的常见场景…...

java-使用druid sqlparser将SQL DDL脚本转化为自定义的java对象

java-使用druid sqlparser将SQL DDL脚本转化为自定义的java对象 一、引言二、环境三、待解析的DDL四、解析后的对象结构五、完整的UT类六、控制台输出总结 一、引言 在日常开发中&#xff0c;有些需要对SQL进行解析的场景&#xff0c;比如读取表结构信息&#xff0c;生成文档、…...

React状态管理常见面试题目(一)

1. Redux 如何实现多个组件之间的通信?多个组件使用相同状态时如何进行管理? Redux 实现组件通信 Redux 是一个集中式的状态管理工具&#xff0c;通过共享一个全局 store 来实现多个组件之间的通信。 通信机制&#xff1a; 所有状态保存在 Redux 的全局 store 中。使用 ma…...

jenkins 出现 Jenkins: 403 No valid crumb was included in the request

文章目录 前言解决方式:1.跨站请求为找保护勾选"代理兼容"2.全局变量或者节点上添加环境变量3.&#xff08;可选&#xff09;下载插件 the strict Crumb Issuer plugin4.重启 前言 jenkins运行时间长了&#xff0c;经常出现点了好几次才能构建&#xff0c;然后报了Je…...

【前端面试】list转树、拍平, 指标,

这个题目涉及的是将一组具有父子关系的扁平数据转换为树形结构&#xff0c;通常称为“树形结构的构建”问题。类似的题目包括&#xff1a; 1. 组织架构转换 给定一个公司的员工列表&#xff0c;每个员工有 id 和 managerId&#xff0c;其中 managerId 表示该员工的上级。任务…...

游戏引擎学习第43天

仓库 https://gitee.com/mrxiao_com/2d_game 介绍运动方程 今天我们将更进一步&#xff0c;探索运动方程&#xff0c;了解真实世界中的物理&#xff0c;并调整它们&#xff0c;以创建一种让玩家感觉愉悦的控制体验。这并不是在做一个完美的物理模拟&#xff0c;而是找到最有趣…...

NVM:安装配置使用(详细教程)

文章目录 一、简介二、安装 nvm三、配置 nvm 镜像四、配置环境变量五、使用教程5.1 常用命令5.2 具体案例 六、结语 一、简介 在实际的开发和学习中可能会遇到不同项目的 node 版本不同&#xff0c;而出现的兼容性问题。 而 nvm 就可以很好的解决这个问题&#xff0c;它可以在…...

matlab测试ADC动态性能的原理

目录 摘要&#xff1a; 简介&#xff1a; 动态规范和定义 动态规格&#xff1a; 双面到单边的功率谱转换 摘要&#xff1a; 模数转换器&#xff08;adc&#xff09;代表了接收器、测试设备和其他电子设备中的模拟世界和数字世界之间的联系。正如本文系列的第1部分中所概述…...

PostgreSQL JSON/JSONB 查询与操作指南

PostgreSQL 提供了强大的 JSON 和 JSONB 数据类型及相关操作&#xff0c;适用于存储和查询半结构化数据。本文将详细介绍其常用操作。 1. 基础操作 1.1 JSON 属性访问 ->: 返回 JSON 对象中的值&#xff0c;结果为 JSON 格式。 SELECT {"a": {"b": 1…...

数据主权守护者:解决微信聊天记录永久保存难题的开源方案

数据主权守护者&#xff1a;解决微信聊天记录永久保存难题的开源方案 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/We…...

OpenClaw隐私保护方案:Qwen3-32B-Chat镜像本地处理敏感数据

OpenClaw隐私保护方案&#xff1a;Qwen3-32B-Chat镜像本地处理敏感数据 1. 为什么金融数据必须留在本地&#xff1f; 上个月我帮一位做私募基金的朋友解决了个棘手问题&#xff1a;他们每天需要处理上百份含客户持仓数据的PDF报告&#xff0c;但现有SaaS工具要求上传文件到云…...

告别混乱!用Python+shutil一键整理UCF101数据集(附完整代码)

告别混乱&#xff01;用Pythonshutil一键整理UCF101数据集&#xff08;附完整代码&#xff09; 刚接触行为识别的研究者&#xff0c;十有八九会在UCF101这类经典数据集的预处理环节卡壳——下载的压缩包解压后&#xff0c;视频文件散落在101个子目录中&#xff0c;而官方提供的…...

Fish Speech-1.5语音自然度提升:后处理降噪与韵律微调实战指南

Fish Speech-1.5语音自然度提升&#xff1a;后处理降噪与韵律微调实战指南 1. 快速上手&#xff1a;部署与基础使用 Fish Speech V1.5是一个强大的文本转语音模型&#xff0c;基于超过100万小时的多语言音频数据训练而成。它支持包括中文、英语、日语在内的12种语言&#xff…...

GLM-4.1V-9B-Base零基础入门:5分钟学会上传图片智能问答

GLM-4.1V-9B-Base零基础入门&#xff1a;5分钟学会上传图片智能问答 1. 认识GLM-4.1V-9B-Base GLM-4.1V-9B-Base是智谱开源的一款视觉多模态理解模型&#xff0c;专门用于处理图像内容识别、场景描述和目标问答等任务。与普通聊天模型不同&#xff0c;它专注于视觉理解能力&a…...

从COX分析到预后模型:如何用R筛选关键基因并画出发表级森林图?

从COX分析到预后模型&#xff1a;如何用R筛选关键基因并画出发表级森林图&#xff1f; 在生物信息学研究中&#xff0c;COX比例风险模型是分析基因与患者生存关系的重要工具。但许多研究者在完成初步分析后常陷入困惑&#xff1a;面对数十个候选基因&#xff0c;如何筛选真正有…...

域名 WHOIS 信息对于 SEO 优化有什么作用

域名 WHOIS 信息对于 SEO 优化有什么作用 在当今互联网时代&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;已经成为了每个网站运营者必须掌握的技能之一。其中&#xff0c;域名 WHOIS 信息也扮演了一定的角色。许多人可能对这一点并不十分了解&#xff0c;本文将详细探…...

2.4G射频微带线设计实战:从阻抗匹配到PCB布局优化

1. 2.4G射频微带线设计基础 搞过Wi-Fi/BLE硬件开发的朋友都知道&#xff0c;射频走线是板上最难伺候的主儿。特别是2.4GHz这个频段&#xff0c;信号波长只有12.5cm&#xff0c;PCB上随便一根走线都可能变成天线。我当年第一次画射频板时&#xff0c;信号强度直接掉了20dB&#…...

前端高级质感按钮复用指南

前端高级质感按钮复用指南为解决项目中按钮样式混乱、交互手感不一致的问题&#xff0c;我们沉淀了这套克制型高级质感按钮可复用方案。 它兼顾了高级视觉层次与真实物理交互手感&#xff0c;无需复杂定制即可快速在项目中落地&#xff0c;尤其适合顶部 Tab、筛选切换、状态标签…...

CH32X035 USB MIDI免驱库:RISC-V嵌入式音乐硬件开发指南

1. 项目概述CH32X035_USBMIDI 是一款专为沁恒电子&#xff08;WCH&#xff09;CH32X035 系列 RISC-V 微控制器设计的高性能 USB MIDI 设备库。该库并非基于通用 CDC ACM 框架的简单封装&#xff0c;而是深度绑定 CH32X035 片上 USBFS&#xff08;USB Full-Speed&#xff09;硬件…...