springMVC(二)—— 进阶

news2024/11/17 5:47:18

一、解决中文乱码问题

解决中文乱码问题的关键在于判断字符是什么时候乱码

  1. 先在java程序里刚生成这个值的地方打印一下,如果在控制台输出就乱码了,那就排除浏览器和jsp页面的编码出问题。否则

  1. 看浏览器的编码

  1. 看这个jsp页面的编码是否设置好了

  1. 一般不用怀疑是tomcat的编码出问题,因为如果tomcat8.0之后,不需要设置URIEncoding="UTF-8",默认就是utf-8编码。

  1. 如果在刚接受到前端传来的值,后端打印出来就是乱码,那就要用springMVC提供的过滤器(不过我们都将过滤器作为默认的死配置,不管乱不乱码,只要是个springMVC项目就给配上过滤器)

自此之后,web.xml的“死配置”变成了:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <!--1.注册DispatcherServlet-->
    <servlet>
        <servlet-name>SpringMVC</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--关联SpringMVC配置文件:通过初始化参数指定SpringMVC配置文件的位置-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc-servlet.xml</param-value>
        </init-param>
        <!--配置DispatcherServlet启动级别:数字越小,启动越早-->
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!--所有请求都会被springmvc拦截-->
    <servlet-mapping>
        <servlet-name>SpringMVC</servlet-name>
        <url-pattern>/</url-pattern>  <!--但jsp页面除外,/*才包括jsp页面-->
    </servlet-mapping>

    <!--2.配置springMVC的乱码过滤器-->
    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

但某些极端情况下,springMVC提供的过滤器也没用了。解决办法视频吧

二、JSON的使用

再重申一遍,JSON只是一种数据交换格式,本身可以直接理解成String字符串类型,并不是一种语言。

进入前后端分离时代以后,后端只需要给前端提供一个controller接口,而前端是纯HTML页面,前端和后端完全独立。如何交互?就需要约定好一种数据传输格式——JSON。

2.1 前端拿到后端传来的json

前端需要将json转为js对象才能用。

2.2 Jackson

  1. 导jar包

2/配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/737670.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python启动TCP服务并监听连接,从客户端发送消息

下面是一个简单的例子&#xff0c;演示如何在Python中启动TCP服务并监听连接&#xff0c;以及如何从客户端发送消息&#xff1a; TCP服务端代码&#xff1a; import socketHOST 192.168.6.211 PORT 8888server_socket socket.socket(socket.AF_INET, socket.SOCK_STREAM) …

electron的(maximize)最大化方法会导致头部白色横条以及四周大黑边

参考文章&#xff1a;https://www.w3cways.com/2505.html 感谢这位博主 我在使用win.maximize()后发现应用程序虽然最大化了&#xff0c;但是四周和顶部有一定宽度的黑边白边&#xff0c;在百度一段时间后没有发现其他人有这个问题 &#x1f614;唉 必现步骤&#xff1a; 只要…

禁止 input 输入框显示历史记录

问题概述 在 HTML 开发中会 input 标签是非常常用的&#xff0c; 当在 input 标签 输入数据后&#xff0c;再点击输入框会显示原来输入过的内容&#xff0c;还会出现下拉的历史记录。让使用人员感觉比较恶心。 解决方案&#xff08;隐藏记录框&#xff09; 隐藏记录框 aut…

环二肽试剂:7451-73-2,CYCLO(-GLY-TRP),环(甘氨酰-L-色氨酰)

资料编辑|陕西新研博美生物科技有限公司小编MISSwu​ CYCLO(-GLY-TRP)环二肽&#xff0c;含有(甘氨酰和色氨酰基团&#xff09;&#xff0c;色氨酸又名α-氨基吲哚基丙酸&#xff0c;分子式:C11H12N2O2&#xff0c;白色至黄白色晶体或结晶性粉末。无臭或微臭&#xff0c;长时间…

Apifox详细使用教程 -- 有这一篇就够了

文章目录 Apifox简介 Apifox的安装与新建项目 Apifox编写接口文档 总结 四、Apifox的使用快捷键 一、Apifox简介 是 API 文档、API 调试、API Mock、API 自动化测试一体化协作平台&#xff0c;更先进的 API 设计/开发/测试工具&#xff0c;定位 Postman Swagger Mock J…

SpringBoot + Kotlin 中使用 GRPC 进行服务通信

示例项目见&#xff1a;kotlin-grpc 一、导入依赖&#xff1a; import com.google.protobuf.gradle.* plugins { id("org.springframework.boot") version "2.3.1.RELEASE" id("io.spring.dependency-management") version "1.0.9.REL…

面试官常问的一些初中级前端知识点

CSS 1. 介绍下 CSS 盒子模型 回答到以下两点就可以&#xff1a; 一个盒子由四个部分组成&#xff1a;content、padding、border、margin。两种盒子模型&#xff1a;W3C 标准盒子模型、IE 怪异盒子模型标准盒子模型 width / height 只是内容高度&#xff0c;不包含 padding 和…

平板ipad触控笔是哪几款?苹果笔性价比高的推荐

实际上&#xff0c;现在市场上许多产品都有各自的特色&#xff0c;一些注重产品外观&#xff0c;一些注重产品功能。就相当于ipad上所搭配的电容笔。所以&#xff0c;在购买电容笔的时候&#xff0c;必须对电容笔有一些认识。在选购前&#xff0c;必须先了解各种类型的电容笔&a…

7-8 程序员买包子

7-8 程序员买包子 分数 10 全屏浏览题目 切换布局 作者 陈越 单位 浙江大学 这是一条检测真正程序员的段子&#xff1a;假如你被家人要求下班顺路买十只包子&#xff0c;如果看到卖西瓜的&#xff0c;买一只。那么你会在什么情况下只买一只包子回家&#xff1f; 本题要求你考…

线程 线程池

线程和进程的区别? 进程是正在运行程序的实例&#xff0c;进程中包含了线程&#xff0c;每个线程执行不同的任务 不同的进程使用不同的内存空间&#xff0c;在当前进程下的所有线程可以共享内存空间 线程更轻量&#xff0c;线程上下文切换成本一般上要比进程上下文切换低 创…

博士后申请哪些老板不要选?

博士后申请是许多研究人员迈向学术界的重要阶段。在选择导师时&#xff0c;需要慎重考虑各方面因素。虽然我不能提及具体老板的名字&#xff0c;但我可以给你一些在博士后申请过程中需要谨慎选择的类型。以下是知识人网小编整理的一些可能不适合选择的老板类型&#xff1a; 1. …

Spring-AutowireFactoryBean

autowire autowire 即自动注入的意思&#xff0c;通过使用 autowire 特性&#xff0c;我们就不用再显示的配置 bean 之间的依赖了。把依赖的发现和注入都交给 Spring 去处理&#xff0c;省时又省力。autowire 几个可选项&#xff0c;比如 byName、byType 和 constructor 等。a…

刘铁猛C#教程学习笔记--初识C#程序

构成C#程序的基本元素 关键字&#xff1a;C#保留的用作特殊用途的标识符标识符&#xff1a;名字&#xff0c;如变量名字&#xff0c;类名字&#xff0c;命名空间名字等等&#xff1b; 标识符命名规则&#xff1a;只能以数字字母或者下划线开头&#xff0c;不能用关键字作为标识…

喜讯!云联壹云入选2023年北京市“专精特新”中小企业

6月25日&#xff0c;北京市经济和信息化局发布《关于对2023年第一季度北京市专精特新中小企业名单进行公告的通知》&#xff0c;北京云联壹云技术有限公司入选2023年北京市“专精特新”中小企业。 “专精特新”是国家为增强企业自主创新能力和核心竞争力&#xff0c;不断提高中…

HHDESK资源管理功能

为使客户体验更上一层楼&#xff0c;我们在最新的HHDESK版本中&#xff0c;新增了一个功能“资源管理”&#xff0c;其中不仅整合了原有的连接管理、网络代理功能&#xff0c;还增加了不少实用的新功能。 本篇便为您简单介绍一下。 1 本地服务 可以方便的调用本地资源。 比如…

基于STM32设计的酒精检测仪

一、需求分析 随着社会的发展和生活水平的提高&#xff0c;人们对于行车安全、家庭安全的要求越来越高&#xff0c;而酒驾等问题也日渐突出&#xff0c;为此&#xff0c;开发一款基于STM32的酒精检测仪&#xff0c;通过检测酒精浓度&#xff0c;实时显示结果并进行报警&#x…

openGauss学习笔记-05 openGauss gsql连接与使用方法

文章目录 openGauss学习笔记-05 openGauss gsql连接与使用方法5.1 以操作系统用户omm登录数据库主节点5.2 连接数据库5.3 数据库简单操作5.4 退出数据库 openGauss学习笔记-05 openGauss gsql连接与使用方法 openGauss提供了在命令行下运行的数据库连接工具gsql。此工具除了具…

【AI】在NVIDIA Jetson Orin Nano上使用tensorrtx部署yolov8

1、下载 1.1 权重文件下载 https://github.com/ultralytics/assets/releases本人下载的yolov8n.pt yolov8n-cls.pt:用于分类 yolov8n-pose.pt:用于姿势识别 yolov8n-seg.pt:用于对象分割 yolov8n-v8loader.pt:专用于人员检测器??? yolov8n.pt:用于对象检测 1.2 源码…

【Go|第7期】浅谈Lorca库中的Chromium命令行参数

日期&#xff1a;2023年7月9日 作者&#xff1a;Commas 签名&#xff1a;(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释&#xff1a;如果您觉得有所帮助&#xff0c;帮忙点个赞&#xff0c;也可以关注我&#xff0c;我们一起成长&#xff1b;如果有不对的地方&#xff…

你想知道个人博客和企业博客具体区别吗?点进来看看吧

在互联网时代&#xff0c;越来越多人开始会去使用博客来记录生活中的点滴。博客已经成为了人们分享信息、表达观点的重要平台。无论是个人还是企业&#xff0c;都可以通过博客来传播自己的声音和观点。这篇文章looklook会聚焦于企业博客&#xff0c;从分析个人与企业博客的区别…