<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小小技术团队]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chengler</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chengler]]></copyright><item><title><![CDATA[linux下批量查找文件内容]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/122581118</link><guid>https://blog.youkuaiyun.com/chengler/article/details/122581118</guid><author>chengler</author><pubDate>Wed, 19 Jan 2022 15:02:21 +0800</pubDate><description><![CDATA[Linux下可以利用grep和find命令批量查找文件内容]]></description><category></category></item><item><title><![CDATA[解决老版本chrome跨域请求失败的问题]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/122369769</link><guid>https://blog.youkuaiyun.com/chengler/article/details/122369769</guid><author>chengler</author><pubDate>Fri, 07 Jan 2022 18:07:07 +0800</pubDate><description><![CDATA[Access-Control-Allow-Headers标头中对通配符的支持仅在2016年5月才被添加到标准中，因此会有老版本的浏览器不支持这个。]]></description><category></category></item><item><title><![CDATA[ubuntu 安装 mysql]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119818255</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119818255</guid><author>chengler</author><pubDate>Fri, 20 Aug 2021 10:41:10 +0800</pubDate><description><![CDATA[ubuntu 安装 mysql1. 安装2. 配置3. 创建管理用户并授权

参考 How To Install MySQL on Ubuntu 20.04

1. 安装
# 查看 mysql-server 版本
 apt list mysql-server
# 安装, 建议安装之前，修改一下镜像，采用 淘宝镜像
 sudo apt install mysql-server

安装日志如下
⋊&gt; /m/c/U/f/shells apt list mysql-server -a             ]]></description><category></category></item><item><title><![CDATA[java实现图片压缩]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119681128</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119681128</guid><author>chengler</author><pubDate>Fri, 13 Aug 2021 17:51:10 +0800</pubDate><description><![CDATA[前景
前端在读取图片时，对超过一定大小的图片进行压缩。
实现方式
1.使用Google提供的插件Thumbnails
2.使用java自带的ImageIO
具体实现
1.Thumbnails
首先在pom中引入jar包
&lt;dependency&gt;
    &lt;groupId&gt;net.coobird&lt;/groupId&gt;
    &lt;artifactId&gt;thumbnailator&lt;/artifactId&gt;
    &lt;version&gt;0.4.8&]]></description><category></category></item><item><title><![CDATA[window安装 Ubuntu子系统 和 fish]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119613219</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119613219</guid><author>chengler</author><pubDate>Wed, 11 Aug 2021 17:55:56 +0800</pubDate><description><![CDATA[window安装 Ubuntu子系统 和 fish一、windows 下安装子系统1. 启用子系统功能：2. 安装 ubuntu 子系统2.1 在 Microsoft Store 中安装2.2 或者自己下载安装二. 安装 windows terminal1. 下载2. 安装三、 安装fish1. 安装 Fish Shell2. 配置 Fish Shell3. 设置 Fish Shell 为默认 shell
一、windows 下安装子系统
1. 启用子系统功能：
在 windows powershell(管]]></description><category></category></item><item><title><![CDATA[Mybatis一对多关系分页查询数据不匹配解决]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119571605</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119571605</guid><author>chengler</author><pubDate>Tue, 10 Aug 2021 15:47:29 +0800</pubDate><description><![CDATA[项目场景：
公司需要根据角色查询用户，用户与角色是一对多的关系
问题描述：
分页查询时，一页10条，第一页只有9条，第二页却有10条
原因分析：
原因是，采用left join 查询一对多关系，分页导致的，第一页有一个用户有两个角色
&lt;select id="selectUserByCond" resultMap="adminUserDto"&gt;
        SELECT
            id, login, first_name, last_name, email, image_url]]></description><category></category></item><item><title><![CDATA[This version of MySQL doesn‘t yet support ‘LIMIT & IN/ALL/ANY/SOME subquery‘解决]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119536696</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119536696</guid><author>chengler</author><pubDate>Mon, 09 Aug 2021 14:14:44 +0800</pubDate><description><![CDATA[执行sql
SELECT * from waybill_print_data where id in 
(SELECT id from waybill_print_data where created_time is null limit 1000);

[SQL] SELECT * from waybill_print_data where id in (SELECT id from waybill_print_data where created_time is null limit 1000)
运行结]]></description><category></category></item><item><title><![CDATA[文件导出，失败 ：Stream closed]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119534076</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119534076</guid><author>chengler</author><pubDate>Mon, 09 Aug 2021 11:53:29 +0800</pubDate><description><![CDATA[项目场景：
利用 java.util.zip 的相关的类进行zip 包导出的操作，结果出现 zip 包只导出了一个文件
问题描述：
报错 stream closeed
错误日志：
java.io.IOException: Stream closed

	at java.util.zip.ZipOutputStream.ensureOpen(ZipOutputStream.java:97)
	at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStre]]></description><category></category></item><item><title><![CDATA[spring boot logback 配置]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119421395</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119421395</guid><author>chengler</author><pubDate>Thu, 05 Aug 2021 16:33:14 +0800</pubDate><description><![CDATA[spring boot logback 配置
spring boot logback 配置spring boot logback 配置相关版本一、使用步骤1.引入库2.配置

相关版本

spring boot 2.2.7.RELEASE

一、使用步骤
1.引入库
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
            &lt;artifactId&]]></description><category></category></item><item><title><![CDATA[富文本编辑器，去除粘贴的word文件中的无效代码]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119420218</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119420218</guid><author>chengler</author><pubDate>Thu, 05 Aug 2021 15:58:37 +0800</pubDate><description><![CDATA[​
将word文件中的内容粘贴到富文本编辑器中时，会发现存在很多无效的代码，格式类似下图：
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:OfficeDocumentSettings&gt;
  &lt;o:RelyOnVML/&gt;
  &lt;o:AllowPNG/&gt;
 &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 9]&gt;&lt]]></description><category></category></item><item><title><![CDATA[使用Fancybox实现iframe弹出框]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119419976</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119419976</guid><author>chengler</author><pubDate>Thu, 05 Aug 2021 15:56:50 +0800</pubDate><description><![CDATA[​
前景
公司要求封装一个js来实现一个弹出框的广告，以便外部的平台来调用。正好js~fancybox为我们提供了iframe功能。我们可以直接使用，不用自己去实现。
fancybox介绍
官网地址：http://www.fancybox.net/
需要注意的是：This site is kept for historical purposes and represents original version of the Fancybox. V4 (the latest), V3 (discontinued]]></description><category></category></item><item><title><![CDATA[java.util.zip生成带目录的zip包]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119223325</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119223325</guid><author>chengler</author><pubDate>Thu, 29 Jul 2021 23:31:09 +0800</pubDate><description><![CDATA[java.util.zip生成带目录的zip包前言一、java.util.zip 是什么二、使用步骤1. 基本对象2. 写数据总结

前言

背景：公司项目有一个文件导出要求，并且要按照特定的目录结构组织

一、java.util.zip 是什么
java.util.zip 是 java 提供的对于压缩文件读写的工具包
二、使用步骤
1. 基本对象

    class Node {
        String name; // 目录名称
        List&lt;Node&gt; nodes; /]]></description><category></category></item><item><title><![CDATA[Nginx一个server配置多个location 404问题解决]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/119223320</link><guid>https://blog.youkuaiyun.com/chengler/article/details/119223320</guid><author>chengler</author><pubDate>Thu, 29 Jul 2021 23:30:10 +0800</pubDate><description><![CDATA[我选择了配置多个location。
location /pc/ {
      root   /data/html/pc/; 
      index  index.html index.html; 
}
location /h5/ {
   root /data/html/h5/;
   index  index.html index.htm; 
}

配置完以后访问。http://xxxx/pc/index.html 提示404
找了好久才搞明白，
访问 http://xxxx/pc/index.htm]]></description><category></category></item><item><title><![CDATA[nginx的server、location、root、alias、try_files指令]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/118807779</link><guid>https://blog.youkuaiyun.com/chengler/article/details/118807779</guid><author>chengler</author><pubDate>Fri, 16 Jul 2021 19:23:35 +0800</pubDate><description><![CDATA[nginx location 配置1. url 结构说明2. nginx server 部分简单说明3. nginx location 部分简单说明4. root，alias, try_files 的相关配置4.1 root4.2 alias4.3 try_files
1. url 结构说明

https://zhangsan:123456@hostname:8888/path/path2?param=value#h123

参考 URL - Web API 接口参考 | MDN




示例部分
英文名
]]></description><category></category></item><item><title><![CDATA[获取Let‘s Encrypt https 证书并自动更新]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/118080681</link><guid>https://blog.youkuaiyun.com/chengler/article/details/118080681</guid><author>chengler</author><pubDate>Mon, 21 Jun 2021 10:05:49 +0800</pubDate><description><![CDATA[[参考官方文档](https://certbot.eff.org/lets-encrypt/centosrhel7-nginx)
环境： CentOS/RHEL 7
## 1. 安装snap，如果已安装，确保是最新版
```
sudo snap install core; sudo snap refresh core
```
## 2. 删除 certbot-auto 以及任何 Certbot OS 安装包
根据你安装时使用的工具执行不同的命令
```
sudo apt-get remove certbot]]></description><category></category></item><item><title><![CDATA[查看mysql正在执行的sql]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/117127859</link><guid>https://blog.youkuaiyun.com/chengler/article/details/117127859</guid><author>chengler</author><pubDate>Fri, 21 May 2021 16:55:40 +0800</pubDate><description><![CDATA[查看正在执行的线程，并按 Time 倒排序，看看有没有执行时间特别长的线程

select * from information_schema.processlist where Command != ‘Sleep’ order by Time desc;

找出所有执行时间超过 5 分钟的线程，拼凑出 kill 语句，方便后面查杀

select concat('kill ', id, ‘;’) from information_schema.proce    sslist where Command !]]></description><category></category></item><item><title><![CDATA[记录一次在linux中排查java程序CPU占用过高问题的过程]]></title><link>https://blog.youkuaiyun.com/chengler/article/details/117127046</link><guid>https://blog.youkuaiyun.com/chengler/article/details/117127046</guid><author>chengler</author><pubDate>Fri, 21 May 2021 16:41:46 +0800</pubDate><description><![CDATA[首先用htop命令查看cpu是哪个程序导致的cpu偏高，发现是java程序

再通过ps命令查看这个程序的线程信息,tid代码线程ID，time代表这个线程的已运行时间
发现有三个线程运行了36分钟，而且占用cpu很高

jstack查看进程信息
首先要先将TID转为16进制得到数值：660a

Printf “%x\n” 26122

通过jstack -pid 再grep查询

jstack 26098 | grep 660a


最终发现是因为redis在保存数据的时候数据过大，序列化消耗太多cpu导]]></description><category></category></item></channel></rss>