- SpringMVC参数解析器HandlerMethodArgumentResolver
这是一条海鱼
SpringMVC
前言在享受SpringMVC带给你便捷的时候,你是否曾经这样疑问过:Controller的handler方法参数能够自动完成参数封装(有时即使没有@PathVariable、@RequestParam、@RequestBody等注解都可),甚至在方法参数任意位置写HttpServletRequest、HttpSession、Writer…等类型的参数,它自动就有值了便可直接使用。对此你是否想问一句
- 分布式 WebSocket 集群解决方案
2401_83916394
程序员分布式websocket网络协议
下面我将描述session特性,以及根据这些特性列举出n个解决分布式架构中处理ws请求的集群方案WebSocketSession与HttpSession在Spring所集成的WebSocket里面,每个ws连接都有一个对应的session:WebSocketSession,在SpringWebSocket中,我们建立ws连接之后可以通过类似这样的方式进行与客户端的通信:protectedvoidh
- 黑猴子的家:JavaWeb 之 Servlet Listener 监听器
黑猴子的家
1、监听器简介Listener是JavaWeb中三大组件之一。Servlet、Filter、Listener三大组件都有的共同特点,都需要实现一个接口,并在web.xml文件配置。JavaWeb中的监听器的监听对象是谁? ServletContext HttpSession ServletRequest2、监听器分类JavaWeb中的监听器共有三种,共8个监听器 -生命周期
- JSP九大内置对象及四个作用域
聂叼叼
request请求对象类型javax.servlet.ServletRequest作用域Requestresponse响应对象类型javax.servlet.SrvletResponse作用域PagepageContext页面上下文对象类型javax.servlet.jsp.PageContext作用域Pagesession会话对象类型javax.servlet.http.HttpSession作
- Cookie 和 Session 的工作流程
墨溱
springjava
Cookie和Session的工作流程.什么是Cookie和session核心操作HttpServletRequest类中的相关方法HttpServletResponse类中的相关方法HttpSession类中的相关方法Cookie类中的相关方法setCookiegetCookie使用cookie结合session实现登录效果login.htmlloginServletindexServlet.C
- 服务器端会话技术-Session
小哼快跑
JavaWeb专栏Session服务器端会话技术
一、Session1.1概述和快速入门概述:Session是服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中快速入门获取HttpSession对象使用HttpSession对象常用方法方法作用HttpSessionrequest.getSession()通过request对象获取HttpSession对象ObjectgetAttribute(Stringname)根据
- 【JavaWeb】会话管理 cookie session 三大域对象总结
道格维克
后端#JavaWebjavaweb后端
文章目录会话管理一、Cookie1.1Cookie的使用1.2Cookie的时效性1.3Cookie的提交路径二、Session2.1HttpSession的使用2.2HttpSession时效性三、三大域对象3.1域对象概述3.2域对象的使用总结会话管理HTTP是无状态协议无状态就是不保存状态,即无状态协议(stateless)HTTP协议自身不对请求和响应之间的通信状态进行保存发送请求和接受响
- Java EE面试题解析(中)
小爱聊IT
Javajava-eejava面试
11、Servlet、Filter、Listener的启动顺序?【重点】启动的顺序为:Listener->Filter->Servlet;执行的顺序不会因为三个标签在配置文件中的先后顺序而改变。监听器类型:Servlet2.4规范定义,按监听的对象划分:用于监听应用程序环境对象(ServletContext)的事件监听器用于监听用户会话对象(HttpSession)的事件监听器用于监听请求消息对象
- HttpSession
Gambler_Tu
httpservletservlethttp
HTTP概述HTTP无状态协议和服务器端状态管理HttpSession一个用户有且最多有一个HttpSession,并且不会被其他用户访问到。HttpSession对象在用户第一次访问网站时自动被创建,你可以通过调用HttpServeltRequest的getSession()方法获得该对象。会话(Session)是一个比请求(Request)更「大」的概念。一个会话中可以包含一个或多个请求;一个
- JavaWeb学习——Session会话
柿子镭
Javawebsession
目录一、Session会话二、创建Session和获取(id号,是否为新)三、Session域数据的存取四、Session生命周期控制1、设置Session的超时时间(以秒为单位)2、获取Session的超时时间3、让当前Session会话马上超时无效五、浏览器和Session之间关联的技术内幕一、Session会话1、Session就是一个接口(HttpSession)。2、Session就是会
- JavaWeb学习|Session
半夜下雨
Java技术学习javaservlet
学习材料声明所有知识点都来自互联网,进行总结和梳理,侵权必删。引用来源:尚硅谷最新版JavaWeb全套教程,javaweb零基础入门完整版Session1、Session就一个接口(HttpSession)。2、Session就是会话。它是用来维护一个客户端和服务器之间关联的一种技术。3、每个客户端都有自己的一个Session会话。4、Session会话中,我们经常用来保存用户登录之后的信息。Se
- 6. SpringMVC-域对象共享数据
CAFEBABE 34
#spring-mvc服务器java运维
域对象共享数据零、四大域对象1.PageContext域2.Request域3.HttpSession域4.ServletContext一、创建项目二、向request域对象共享数据1.使用ServletAPI向request域对象共享数据2.使用ModelAndView向request域对象共享数据3.使用Model向request域对象共享数据4.使用map向request域对象共享数据5.使
- JavaWeb,会话管理的学习
二狗mao
JavaWeb学习java
会话管理概述无状态协议无状态就是不保存状态,HTTP就是无状态协议,HTTP协议自身不会对请求和响应之间的通信状态进行保存,也就是说,在HTTP协议这个级别,协议对于发送过的请求或者响应都不做持久化处理。会话管理实现的手段cookie是在客户端保留少量数据的技术,主要通过响应头向客户端响应一些客户端要保留的信息session是在服务器端保留更多的数据的技术,主要通过HttpSession对象保存一
- Servlet之对多用户登录时HttpSession会话信息覆盖问题的担忧
是席木木啊
JavaservletsessionJESSIONID
多用户登录时HttpSession会话信息覆盖问题的担忧1-JSESSIONID的作用机制2-JSESSIONID的是如何进行编码的?3-代码验证提供前端页面login.htmlindex.html后端代码LoginServletIndexServletweb.xml配置测试结果对这个问题存有疑惑,完全是因为不知道JSESIONID这个字段的值是如何产生的。然后在网上看到了这样一篇博客:《sess
- JavaEE中的监听器的作用和工作原理
_Matthew
#Java的零星知识java-eejava
在JavaEE(JavaPlatform,EnterpriseEdition)中,监听器(Listener)是一种重要的组件,用于监听和响应Web应用程序中的事件。监听器的作用是在特定的事件发生时执行一些自定义的逻辑。常见的监听器包括ServletContext监听器、HttpSession监听器和ServletRequest监听器。以下是监听器的作用和工作原理:1.监听器的作用:响应事件:监听器
- Listener监听器----ServletContext的生命周期监听器
小912
监听器java前端服务器
一、Listener监听器监听器用于监听web应用中某些对象的创建、销毁、增加、修改删除等动作的发生,然后做出相应的相应处理,当范围对象的状态发生变化的时候,服务器会自动调用监听器对象中的方法二、监听器分类按监听的对象划分,可以分为ServletContext对象生命周期监听器与属性操作监听器HttpSession对象生命周期监听器与属性操作监听器ServletRequest对象声明周期监听器与属
- Listener监听器----HttpSession对象的生命周期监听器
小912
HttpSessionJava监听器java前端服务器
一、HttpSession对象的生命周期监听器HttpSessionListener接口定义了HttpSession对象生命周期的监听行为。voidsessionCreated(HttpSessionEventse)HttpSession对象创建后会触发该监听器方法,并将已创建HttpSession对象传递到该方法中voidsessionDestoryed(HttpSessionEventse)H
- ssh相关
ads
crm练习课程内容课程目标1.通过SSH框架完成基本功能的开发用户模块功能一:用户注册功能1.可以先判断登录名是否已经存在2.要给密码使用MD5进行加密操作功能二:用户登录功能1.登录功能要注意需要先给密码加密后,再进行查询*密码加密后再查询*用户的状态必须是1,字符串类型的功能三:用户退出功能1.把用户信息从HttpSession中清除客户模块功能一:查询所有客户功能1.数据字典表的引入*数据字
- 2018-11-03监听器
Xmaxdev
一、什么是监听器监听器是Servlet规范中定义的一种特殊类,用于监听ServletContext、HttpSession和ServletRequest等域对象的创建和销毁事件,它还可以监听域对象的属性发生修改的事件,可以在事件发生前或者发生后做一些必要的处理。在Servlet中要创建监听器类首先需要新建一个类并继承相应的监听器接口,实现接口中定义的方法,然后在web.xml文件中注册相应的监听器
- Java Web学习笔记之session入门
codingXiaxw
1.HttpSession概述HttpSession是由JavaWeb提供的,用来会话跟踪的类。session是服务器端对象,保存在服务器端。HttpSession是Servlet三大域对象(request、session、application)之一,所以它也有setAttribute()、getAttribute()、removeAttribute()三个方法。HttpSession底层依赖C
- 权限控制 filter
没事遛弯
importjavax.servlet.*;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;importjava.io.IOException;/***CreatedbyAdministrator
- HttpSession的使用
不死鸟.亚历山大.狼崽子
javahivehadoop数据仓库
1HttpSession概述在JavaServletAPI中引入session机制来跟踪客户的状态。session指的是在一段时间内,单个客户与Web服务器的一连串相关的交互过程。在一个session中,客户可能会多次请求访问同一个网页,也有可能请求访问各种不同的服务器资源。在ServletAPI中定义了javax.servlet.http.HttpSession接口,Servlet容器必须实现这
- locust 快速入门--程序调试
Qredsun
locust测试python
背景对测试的api引入locust后,不在使用requests库进行http请求了,而是通过client属性发送请求,实质是使用HttpSession。问题:如果对locust程序进行调试解决方案:因为locust使用协程,需要开启pycharm调试器Gevent兼容兼容模式:使用单用户运行模式完成调试,执行运行脚本文件,不需要使用控制台命令启动。importosfromloggingimport
- 使用HttpSession和过滤器实现一个简单的用户登录认证的功能
沐雨橙风ιε
javaservlet
这篇文章分享一下怎么通过session结合过滤器来实现控制登录访问的功能,涉及的代码非常简单,通过session保存用户登录的信息,如果没有用户登录的话,会在过滤器中处理,重定向回登录页面。创建一个springboot项目,添加springbooot-starter-web和lombok的依赖。创建对应的实体类、controller、service,并创建两个简单的html页面测试过滤器的效果。一
- ②手机验证码登录功能:Redis实现session共享
.29.
项目业务Redisredis数据库缓存sessionThreadLocalspringbootjava-ee
个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~个人主页:.29.的博客学习社区:进去逛一逛~②手机验证码登录功能:Redis实现session共享手机验证码登录实现流程登录拦截功能存在session共享问题的HttpSession实现方式在上一篇文章:①实现基于session的登录流程:发送验证码、登录注册、校验登陆状态-CS
- 分布式Session共享
码王JUN
分布式
当服务众多时,服务A需要服务B某个请求的结果来用。将服务B的请求结果保存到HttpSession的对象的方法setAttribute("名称",值)。方法setAttribute的底层也是用map将名称和值保存到内存。但是尽管服务B使用Session保存了服务B的请求结果,但是如果这两个服务的浏览器上的作用域Domain不同,服务A是拿不到的。所以我们需要将作用域改为父域或相同域。作用域是在浏览器
- SpringBoot上传文件返回前端进度条
是小故事呀
SpringBootspringboot前端java
话不多说,直接上干货1、需要创建一个实现了processListener接口的实现类用于监听文件上传进度importjavax.servlet.http.HttpSession;importorg.apache.commons.fileupload.ProgressListener;importorg.springframework.stereotype.Component;@Componentp
- Tomcat 源码分析 (Tomcat的Session管理) (十一)
959y
Tomcat源码分析tomcatservletjava
文章目录1.Session的问题2.Session关键类分析3.Session获取细节1.Session的问题Tomcat中对于Session相关的框架和查询SessionServlet中,Session代表着用户会话,开发人员经常用Session存储一些数据Session是什么Tomcat如何对Session进行管理的。2.Session关键类分析两个接口:Session和HttpSession
- httpSession的正确理解
pengchong333
javawebjspjavajsphttpSession
关于HttpSession的误解实在是太多了,本来是一个很简单的问题,怎会搞的如此的复杂呢?下面说说我的理解吧:一个session就是一系列某用户和服务器间的通讯。服务器有能力分辨出不同的用户。一个session的建立是从一个用户向服务器发第一个请求开始,而以用户显式结束或session超时为结束。其工作原理是这样的:1.当一个用户向服务器发送第一个请求时,服务器为其建立一个session,并为此
- HTTP Session 的理解
大树叶
httphtpsession
session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的含义也很不相同。这里只探讨HTTPSession。为了说明问题,这里基于JavaServlet理解Session的概念与原理,这里所说Servlet已经涵盖了JSP技术,因为JSP最终也会被编译为Servlet,两者有着相同的本质。在Ja
- Java实现的基于模板的网页结构化信息精准抽取组件:HtmlExtractor
yangshangchuan
信息抽取HtmlExtractor精准抽取信息采集
HtmlExtractor是一个Java实现的基于模板的网页结构化信息精准抽取组件,本身并不包含爬虫功能,但可被爬虫或其他程序调用以便更精准地对网页结构化信息进行抽取。
HtmlExtractor是为大规模分布式环境设计的,采用主从架构,主节点负责维护抽取规则,从节点向主节点请求抽取规则,当抽取规则发生变化,主节点主动通知从节点,从而能实现抽取规则变化之后的实时动态生效。
如
- java编程思想 -- 多态
百合不是茶
java多态详解
一: 向上转型和向下转型
面向对象中的转型只会发生在有继承关系的子类和父类中(接口的实现也包括在这里)。父类:人 子类:男人向上转型: Person p = new Man() ; //向上转型不需要强制类型转化向下转型: Man man =
- [自动数据处理]稳扎稳打,逐步形成自有ADP系统体系
comsci
dp
对于国内的IT行业来讲,虽然我们已经有了"两弹一星",在局部领域形成了自己独有的技术特征,并初步摆脱了国外的控制...但是前面的路还很长....
首先是我们的自动数据处理系统还无法处理很多高级工程...中等规模的拓扑分析系统也没有完成,更加复杂的
- storm 自定义 日志文件
商人shang
stormclusterlogback
Storm中的日志级级别默认为INFO,并且,日志文件是根据worker号来进行区分的,这样,同一个log文件中的信息不一定是一个业务的,这样就会有以下两个需求出现:
1. 想要进行一些调试信息的输出
2. 调试信息或者业务日志信息想要输出到一些固定的文件中
不要怕,不要烦恼,其实Storm已经提供了这样的支持,可以通过自定义logback 下的 cluster.xml 来输
- Extjs3 SpringMVC使用 @RequestBody 标签问题记录
21jhf
springMVC使用 @RequestBody(required = false) UserVO userInfo
传递json对象数据,往往会出现http 415,400,500等错误,总结一下需要使用ajax提交json数据才行,ajax提交使用proxy,参数为jsonData,不能为params;另外,需要设置Content-type属性为json,代码如下:
(由于使用了父类aaa
- 一些排错方法
文强chu
方法
1、java.lang.IllegalStateException: Class invariant violation
at org.apache.log4j.LogManager.getLoggerRepository(LogManager.java:199)at org.apache.log4j.LogManager.getLogger(LogManager.java:228)
at o
- Swing中文件恢复我觉得很难
小桔子
swing
我那个草了!老大怎么回事,怎么做项目评估的?只会说相信你可以做的,试一下,有的是时间!
用java开发一个图文处理工具,类似word,任意位置插入、拖动、删除图片以及文本等。文本框、流程图等,数据保存数据库,其余可保存pdf格式。ok,姐姐千辛万苦,
- php 文件操作
aichenglong
PHP读取文件写入文件
1 写入文件
@$fp=fopen("$DOCUMENT_ROOT/order.txt", "ab");
if(!$fp){
echo "open file error" ;
exit;
}
$outputstring="date:"." \t tire:".$tire."
- MySQL的btree索引和hash索引的区别
AILIKES
数据结构mysql算法
Hash 索引结构的特殊性,其 检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。
可能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree 索引呢
- JAVA的抽象--- 接口 --实现
百合不是茶
抽象 接口 实现接口
//抽象 类 ,方法
//定义一个公共抽象的类 ,并在类中定义一个抽象的方法体
抽象的定义使用abstract
abstract class A 定义一个抽象类 例如:
//定义一个基类
public abstract class A{
//抽象类不能用来实例化,只能用来继承
//
- JS变量作用域实例
bijian1013
作用域
<script>
var scope='hello';
function a(){
console.log(scope); //undefined
var scope='world';
console.log(scope); //world
console.log(b);
- TDD实践(二)
bijian1013
javaTDD
实践题目:分解质因数
Step1:
单元测试:
package com.bijian.study.factor.test;
import java.util.Arrays;
import junit.framework.Assert;
import org.junit.Before;
import org.junit.Test;
import com.bijian.
- [MongoDB学习笔记一]MongoDB主从复制
bit1129
mongodb
MongoDB称为分布式数据库,主要原因是1.基于副本集的数据备份, 2.基于切片的数据扩容。副本集解决数据的读写性能问题,切片解决了MongoDB的数据扩容问题。
事实上,MongoDB提供了主从复制和副本复制两种备份方式,在MongoDB的主从复制和副本复制集群环境中,只有一台作为主服务器,另外一台或者多台服务器作为从服务器。 本文介绍MongoDB的主从复制模式,需要指明
- 【HBase五】Java API操作HBase
bit1129
hbase
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.ha
- python调用zabbix api接口实时展示数据
ronin47
zabbix api接口来进行展示。经过思考之后,计划获取如下内容: 1、 获得认证密钥 2、 获取zabbix所有的主机组 3、 获取单个组下的所有主机 4、 获取某个主机下的所有监控项  
- jsp取得绝对路径
byalias
绝对路径
在JavaWeb开发中,常使用绝对路径的方式来引入JavaScript和CSS文件,这样可以避免因为目录变动导致引入文件找不到的情况,常用的做法如下:
一、使用${pageContext.request.contextPath}
代码” ${pageContext.request.contextPath}”的作用是取出部署的应用程序名,这样不管如何部署,所用路径都是正确的。
- Java定时任务调度:用ExecutorService取代Timer
bylijinnan
java
《Java并发编程实战》一书提到的用ExecutorService取代Java Timer有几个理由,我认为其中最重要的理由是:
如果TimerTask抛出未检查的异常,Timer将会产生无法预料的行为。Timer线程并不捕获异常,所以 TimerTask抛出的未检查的异常会终止timer线程。这种情况下,Timer也不会再重新恢复线程的执行了;它错误的认为整个Timer都被取消了。此时,已经被
- SQL 优化原则
chicony
sql
一、问题的提出
在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统
- java 线程弹球小游戏
CrazyMizzz
java游戏
最近java学到线程,于是做了一个线程弹球的小游戏,不过还没完善
这里是提纲
1.线程弹球游戏实现
1.实现界面需要使用哪些API类
JFrame
JPanel
JButton
FlowLayout
Graphics2D
Thread
Color
ActionListener
ActionEvent
MouseListener
Mouse
- hadoop jps出现process information unavailable提示解决办法
daizj
hadoopjps
hadoop jps出现process information unavailable提示解决办法
jps时出现如下信息:
3019 -- process information unavailable3053 -- process information unavailable2985 -- process information unavailable2917 --
- PHP图片水印缩放类实现
dcj3sjt126com
PHP
<?php
class Image{
private $path;
function __construct($path='./'){
$this->path=rtrim($path,'/').'/';
}
//水印函数,参数:背景图,水印图,位置,前缀,TMD透明度
public function water($b,$l,$pos
- IOS控件学习:UILabel常用属性与用法
dcj3sjt126com
iosUILabel
参考网站:
http://shijue.me/show_text/521c396a8ddf876566000007
http://www.tuicool.com/articles/zquENb
http://blog.csdn.net/a451493485/article/details/9454695
http://wiki.eoe.cn/page/iOS_pptl_artile_281
- 完全手动建立maven骨架
eksliang
javaeclipseWeb
建一个 JAVA 项目 :
mvn archetype:create
-DgroupId=com.demo
-DartifactId=App
[-Dversion=0.0.1-SNAPSHOT]
[-Dpackaging=jar]
建一个 web 项目 :
mvn archetype:create
-DgroupId=com.demo
-DartifactId=web-a
- 配置清单
gengzg
配置
1、修改grub启动的内核版本
vi /boot/grub/grub.conf
将default 0改为1
拷贝mt7601Usta.ko到/lib文件夹
拷贝RT2870STA.dat到 /etc/Wireless/RT2870STA/文件夹
拷贝wifiscan到bin文件夹,chmod 775 /bin/wifiscan
拷贝wifiget.sh到bin文件夹,chm
- Windows端口被占用处理方法
huqiji
windows
以下文章主要以80端口号为例,如果想知道其他的端口号也可以使用该方法..........................1、在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等. 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入&
- 开源ckplayer 网页播放器, 跨平台(html5, mobile),flv, f4v, mp4, rtmp协议. webm, ogg, m3u8 !
天梯梦
mobile
CKplayer,其全称为超酷flv播放器,它是一款用于网页上播放视频的软件,支持的格式有:http协议上的flv,f4v,mp4格式,同时支持rtmp视频流格 式播放,此播放器的特点在于用户可以自己定义播放器的风格,诸如播放/暂停按钮,静音按钮,全屏按钮都是以外部图片接口形式调用,用户根据自己的需要制作 出播放器风格所需要使用的各个按钮图片然后替换掉原始风格里相应的图片就可以制作出自己的风格了,
- 简单工厂设计模式
hm4123660
java工厂设计模式简单工厂模式
简单工厂模式(Simple Factory Pattern)属于类的创新型模式,又叫静态工厂方法模式。是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。
- maven笔记
zhb8015
maven
跳过测试阶段:
mvn package -DskipTests
临时性跳过测试代码的编译:
mvn package -Dmaven.test.skip=true
maven.test.skip同时控制maven-compiler-plugin和maven-surefire-plugin两个插件的行为,即跳过编译,又跳过测试。
指定测试类
mvn test
- 非mapreduce生成Hfile,然后导入hbase当中
Stark_Summer
maphbasereduceHfilepath实例
最近一个群友的boss让研究hbase,让hbase的入库速度达到5w+/s,这可愁死了,4台个人电脑组成的集群,多线程入库调了好久,速度也才1w左右,都没有达到理想的那种速度,然后就想到了这种方式,但是网上多是用mapreduce来实现入库,而现在的需求是实时入库,不生成文件了,所以就只能自己用代码实现了,但是网上查了很多资料都没有查到,最后在一个网友的指引下,看了源码,最后找到了生成Hfile
- jsp web tomcat 编码问题
王新春
tomcatjsppageEncode
今天配置jsp项目在tomcat上,windows上正常,而linux上显示乱码,最后定位原因为tomcat 的server.xml 文件的配置,添加 URIEncoding 属性:
<Connector port="8080" protocol="HTTP/1.1"
connectionTi