前言 客户环境系统迁移新服务器,客户要求数据库从 mariadb 修改为 mysql ,新装了一个 mysql5.7 迁移旧数据后,启动项目,后台纷纷报错 报错信息: Expression #1 of ORDER BY clause is not in SELECT list, references column 'xxxx' which is not in SELECT list; this is incompatible with DISTINCT 解决方案 问题原因: mysql5.7.5及以上版本将sql_…

2021年08月10日 0条评论 176点热度 0人点赞 阅读全文

前言 最近项目中,需要多个文件打包下载,这里通过将多个 url 文件直接转为一个 zip 压缩包下载的方式 实现 package com.pip.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; im…

2021年08月10日 0条评论 145点热度 0人点赞 阅读全文

前言 公司项目使用的 springcloud 微服务,打包后上线巨慢,因为每个项目都引用了很多 jar,上传到服务器的时候速度感人,但是其中很多项目用到了一样的 jar ,发现有一种 lib jar 包外置方式,先把 所有 jar 包放在一个文件夹里面,上传到服务器后,只要 pom 里面没有新的依赖就不需要更新 lib 包,如果有新的依赖也只需要增加新的 jar 文件就行了。 下面在 pom.xml 中设置 build 参数,就可以实现 打包的时候,在同级目录 外置 libs 包。项目本体 jar 就特别小,大大加…

2021年07月19日 0条评论 163点热度 0人点赞 阅读全文

前言 项目中多个微服务使用了精简打包方式,lib 包外置,现在就需要把各个子模块的 lib 包汇总到一起,并且获取到最新多出来的 jar 文件,用到下面一段命令,这里记录下来备用。 其中 projectPath 为项目所在地址 libsPath 为全量 lib jar 包 newlibsPath 为和 libsPath 比较后 多出来的 jar 命令 package com.pip; import java.io.File; import java.io.FileFilter; import java.io.IOE…

2021年07月19日 0条评论 175点热度 0人点赞 阅读全文

在启动微服务项目的时候,由于 jar 文件过多,所以需要一套快速启动的命令进行启动。 以下是命令: 放到执行文件夹内 start.sh #!/usr/bin/env bash # 启动一个目录下的所有jar包 function read_dir(){ for file in `ls` do # 当前文件不是一个文件夹 if [[ -f file ]] then # 如果当前文件是一个.jar结尾的文件则启动它 if [[{file:0-4} == '.jar' ]]; then echo file 开始启动... …

2021年07月19日 0条评论 176点热度 0人点赞 阅读全文

JVM 调优目标 使用较小的内存占用来获得较高的吞吐量或者较低的延迟。 程序在上线前的测试或运行中有时会出现一些大大小小的JVM问题,比如cpu load过高、请求延迟、tps降低等,甚至出现内存泄漏(每次垃圾收集使用的时间越来越长,垃圾收集频率越来越高,每次垃圾收集清理掉的垃圾数据越来越少)、内存溢出导致系统崩溃,因此需要对JVM进行调优,使得程序在正常运行的前提下,获得更高的用户体验和运行效率。 重要指标: 内存占用:程序正常运行需要的内存大小。 延迟:由于垃圾收集而引起的程序停顿时间。 吞吐量:用户程序运行时…

2021年06月07日 0条评论 308点热度 0人点赞 阅读全文

数据结构 首要考虑的就是数据该如何存储,用什么数据结构存储,最简单的就直接用Map来存储数据;或者复杂的如redis一样提供了多种数据类型哈希,列表,集合,有序集合等,底层使用了双端链表,压缩列表,集合,跳跃表等数据结构; 对象上限 因为是本地缓存,内存有上限,所以一般都会指定缓存对象的数量比如1024,当达到某个上限后需要有某种策略去删除多余的数据; 清除策略 上面说到当达到对象上限之后需要有清除策略,常见的比如有LRU(最近最少使用)、FIFO(先进先出)、LFU(最近最不常用)、SOFT(软引用)、WEAK(…

2021年04月12日 0条评论 298点热度 0人点赞 阅读全文

Maven 工具包 https://wws.lanzous.com/b0260abej 密码:br66

2021年03月29日 0条评论 305点热度 0人点赞 阅读全文

这里备份一下 maven 本地仓库 .m2 文件夹,需要时可以使用 https://wws.lanzous.com/iN5nDnfcmxa 密码:4xxh

2021年03月29日 0条评论 311点热度 0人点赞 阅读全文

工厂设计模式 : Spring使用工厂模式通过 BeanFactory、ApplicationContext 创建 bean 对象。 代理设计模式 : Spring AOP 功能的实现。 单例设计模式 : Spring 中的 Bean 默认都是单例的。 模板方法模式 : Spring 中 jdbcTemplate、hibernateTemplate 等以 Template 结尾的对数据库操作的类,它们就使用到了模板模式。 包装器设计模式 : 我们的项目需要连接多个数据库,而且不同的客户在每次访问中根据需要会去访问不…

2021年03月26日 0条评论 280点热度 0人点赞 阅读全文