RestTemplate调用请求中文乱码解决办法 RestTemplate调用请求中文乱码解决办法一、出现问题的原因二、解决办法一、出现问题的原因RestTemplate在请求调用过程中,利用的HttpMessageConverter类来进行报文转换,以下是部分源码而我们在HttpMessageConventer接口的抽象类AbstractHttpMessageConverter中发现有defaultCharset的字段,并存在set方法/*** Set the default character set, if any. * @since
Mongodb导出JSON或CSV Mongodb导出JSON或CSV一、使用工具二、解决思路及办法2.1 快速指导2.2 工具选项含义一、使用工具mongoexport命令行mongoexport是官方提供的可以生成JSON和CSV数据文件的命令行工具,其在安装目录的bin文件夹下。二、解决思路及办法2.1 快速指导导出JSONmongoexport --uri="mongodb://192.168.0.27:27017/test" --collection=operationLog --out=my.json --pret
SpringLDAP连接LDAPS证书报错解决办法 一、问题背景Java操作LDAP一般通过Spring LDAP比较方便,一般我们都是使用的常规的非加密的389端口,常规的初始化如下:LdapContextSource contextSource = new LdapContextSource();contextSource.setUserDn(config.getUsername());contextSource.setPassword(config.getPassword());String url = "ldap://" + config.
记录项目Mybatis出现报错Error querying database. Cause: java.lang.IndexOutOfBoundsException: Index 9 out of 记录项目Mybatis出现报错Error querying database. Cause: java.lang.IndexOutOfBoundsException: Index 9 out of bounds for length 9错误现象错误原因解决方案错误现象确认SQL没有任何问题,但是在执行时仍然出现以下报错,报错下标越界:IndexOutOfBoundsException: Index 9 out of bounds for length 918:02:19.449 [http-nio-
记录一次jmeter压测结果jtl文件过大(几十G)问题解决办法 记录一次jmeter压测结果jtl文件过大问题解决办法一、背景二、出现问题的原因三、解决问题的办法 一、背景正常jmeter压测(长时间的稳定性测试除外),一般jmeter产生的jtl文件都不会很大,几兆到几十兆,但是我们这次压测的结果,即使200线程组压测出来的jtl文件结果却高达10G,400线程组的压测结果高达30G,仅仅才压了3-8分钟,明显不正常,对于测试结果分析工作非常不便。 二、出现问题的原因最终找了一圈,才发现jmeter的配置文件存在问题,bin目录的配置文
通过实例理解MySQL事务及几种锁(二) 通过实例理解MySQL事务及几种锁(二)前言准备条件一、Mysql中的几种锁概念及示例体验1. 共享锁(读锁、S锁)2. 排它锁(写锁、X锁)3. 意向锁:意向共享锁(IS锁)和意向排它锁(IX锁)4. 表锁5. 行级锁MySQL何时用表锁,何时用行锁呢?6. 间隙锁7. 临键锁8. 自增锁9. 悲观锁(抽象概念)10. 乐观锁(抽象概念)11. 死锁参考资料前言接上一篇《通过实例理解MySQL事务及几种锁(一)》的事务,这一篇我们梳理认识一下MySQL中的几种锁的概念,在介绍每一种锁的时候,会尽量的用
通过实例理解MySQL事务及几种锁(一) 通过实例理解MySQL事务及几种锁(一)前言准备条件一、基本概念二、事务的特性(ACID)三、事务的隔离级别Read UncommittedRead CommitedRepeatable ReadSerializable不可重复读、可重复读、幻读的区别四、Mysql中的几种锁参考资料前言最近项目里有个特殊的BUG,排查了好半天才发现是因为事务引起的。因代码中采用了更精细的编程式事务,与Service方法中的传统事务属于不同事务,因此得不到想要的数据,最终引起BUG。于是,又回头重新复习了一下MySQL的
ie不支持的event.stopPropagation的解决方式 if (event.stopPropagation) { // 针对 Mozilla 和 Opera event.stopPropagation();} else if (window.event) { // 针对 IE window.event.cancelBubble = true;}只要把event.stopPropagation(),替换为上面的代码就可以了https://www.cnblogs.com/olive27/p/6762419.html.
Linux普通用户部署mysql主从-主主模式 Linux普通用户部署mysql主从-主主模式前言一、准备东西二、配置过程2.1 机器131的my.cnf2.2 机器132的my.cnf2.4 重启mysql2.5 备份数据2.6 配置主从复制之前创建授权用户2.7 配置互为主从三、常见的主从同步问题3.1 Slave_SQL_Running:no3.2 Slave_IO_Running:no前言这次我们接着上次的普通用户部署单机mysql的,继续往下尝试mysql的主从/主主模式部署。对单机版mysql安装还不熟悉的,可以回顾一下《Linux普通用
Linux普通用户安装单机mysql5.7 Linux普通用户安装单机mysql 5.7前言一、准备东西二、安装过程2.1 卸载原带mysql(MariaDB)2.2 创建并切换普通用户2.3 解压并安装2.4 启动并修改mysql密码2.5 配置环境变量(可选)前言通常很多网上的安装mysql的教程都是以root用户来安装的,但是我们知道root用户的权限非常之高,在真实的项目环境中,往往要求不能使用root用户来安装和运行软件,防止因为漏洞导致系统被攻击,所以一般会使用有限权限的普通用户来安装软件。我们今天就是要用普通用户来安装一次mysql
从lombok的val和var到JDK的var关键字 从lombok的@val和@var到JDK的var关键字前言一、Lombok中的val和var1.1 lombok.val1.2 lombok.var二、Java中的var关键字2.1 如何使用?2.2 为什么推出var关键字?三、该如何抉择呢?Reference前言近期因项目中的开源框架版本升级导致项目的整体jdk版本被迫从万年的java8升级到了java11,于是我们也从该开源框架中看到了对于我来说一个比较陌生的身影—val,于是便开始一小波的学习。一、Lombok中的val和var1.1
记录使用IE打开网页报错SCRIPT1028: 缺少标识符、字符串或数字的解决办法 报错SCRIPT1028: 缺少标识符、字符串或数字的解决办法一、问题现象二、解决办法2.1 造成问题的原因2.2 解决办法Reference一、问题现象项目网页使用IE11的兼容性视图模式(即IE7模式)渲染页面,页面一片空白,打开控制台,发现报错SCRIPT1028: 缺少标识符、字符串或数字,如图:点开报错,发现是在一个JSON处的报错:二、解决办法2.1 造成问题的原因首先我们点了一下报错的超链接,跳到一个微软的官方文档,描述如下:显而易见就是语法问题了。经过仔细排查才发现是第8
通过源码重新认识Java集合迭代遍历增删元素时出现的ConcurrentModificationException及奇怪现象 Java集合循环时删除元素的怪异表现前言一、场景设定二、怪异现象2.1前言我们经常会在项目里遇到那种需要过滤无效数据的场景,较普通常规的做法就是在循环遍历的时候,将不符合要求的元素移出集合得到我们想要的结果。但是如果对集合的理解有偏差的话,可能会出现一些奇怪的现象哦,今天就一起回顾一下。一、场景设定假设有一个集合list为[11、22、22、33],现在的要求是我们不需要其中的22元素,但是我们又不知道其中元素的顺序,该如何操作呢?二、怪异现象2.1...
记录Maven打包时每次都出现Download maven-metadata.xml卡住的问题解决办法 目录一、问题描述二、解决办法解决方式(1)解决方式(2)一、问题描述项目每次打包的时候,都要联网加载maven仓库(或私服),从仓库中下载jar包或者标题中提到的maven-metadata.xml文件。明明本地仓库中依赖包都有还是下载,导致每次打包的时候如果网络不好或者没网的时候就打不了包了或者卡很久才跳过去,搞的我很烦燥。 二、解决办法解决方式(1)据说把IDEA的maven设置改成offline就可以了(Eclipse同理) 解决方式(2)虽然(1)有的人说有效
Linux学习之文件权限 Linux学习之文件权限前言一、权限身份二、权限描述三、文件权限修改(1)三个命令(2)权限修改(3) rwx权限对于文件和目录的含义不同前言之前没系统学习Linux文件权限,经常在安装软件的时候,面对教程上写的以下一类的命令一脸懵逼chmod 755 start.shchmod a+w start.shchgrp guest start.shchown guest start.sh虽然知道以上都是用于调整文件权限的,755 权限是什么权限?a+w有代表什么?chmod、chgrp、chow
Linux学习之命令该如何记? Linux学习之命令该如何记?Linux命令的基本格式Linux命令帮助手册相信很多人跟我一样,众多的Linux命令不知道该如何记(背),什么时候该用-符号,什么时候该用–符号?其实对于我自己来说,当然经常记住固定用法,经常使用是一种方式,这固然是常规做法,但是往往也有很多命令咱做不到一直用,所以经常是前面看了后面忘,然后到了真正需要某个命令的时候,可能因为完全想不起来而限制了我们的想法。因此,我还是觉得某些时候需要了解一下其中的一些规律和设计原理,可能更有助于记忆,或留有映象,比如我之前sed命令的那一
记录一次SpringBoot项目启动报错Topic(s) [operationLog] is/are not present and missingTopicsFatal is true 启动现象:项目启动之后,会停留在连接kafka的地方,大约停留2分钟左右,然后报错:Topic(s) [operationLog, userAuthLog] is/are not present and missingTopicsFatal is true19:37:49.266 [main] ERROR o.springframework.boot.SpringApplication - Application run failedorg.springframework.context.Applic
重新认识正则表达式 重新认识正则表达式前言一、基础知识回顾1.1 基础语法二、进阶知识2.1 DFA引擎和NFA引擎2.2 贪婪模式与非贪婪模式2.3 独占模式2.4 回溯2.4.1 匹配基本过程2.4.2 回溯图解2.5 正向预查和反向预查(也有叫做环视)三、Java正则表达式API四、问题答案Reference前言阅读对象:有正则表达式基础的提几个有关正则表达式的问题检验一下,要求用正则表达式解决:如何利用正则表达式查找到字符串“Hello lolipop! love you, solo?”中以lo结尾的单词?
Linux利器学习之sed命令 Linux利器学习之sed命令前言一、sed是什么?二、sed的语法2.1 基础语法2.2 参数说明2.3 script说明三、sed示例练习3.1 增3.2 删3.3 改3.4 查3.5 复合操作四、sed的优势Reference前言网上很多Linux学习都是简单的把命令列出来,然后背,但是这样的结果就是如果不是经常用的话就是前面记后面忘,而且记得不全。所以我决定换个方式学习Linux的常用命令。今天就从sed开始,学好这个工具,对于我们平常在linux做项目部署运维相当有帮助,能大大提高我们的工作效