<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[juntong5813的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/juntong5813</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; juntong5813]]></copyright><item><title><![CDATA[esaypoi导出excel后office打开报错]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/124262651</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/124262651</guid><author>juntong5813</author><pubDate>Tue, 19 Apr 2022 00:02:11 +0800</pubDate><description><![CDATA[easypoi导出excel使用office无法打开，wps正常]]></description><category></category></item><item><title><![CDATA[Java开发容易忽视的错误]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106975999</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106975999</guid><author>juntong5813</author><pubDate>Sat, 27 Jun 2020 02:35:19 +0800</pubDate><description><![CDATA[1：对象相等判断
和 equals 的区别是什么
== : 它的作用是判断两个对象的地址是不是相等。即，判断两个对象是不是同一个对象。(基本数据类型 == 比较的是值，引用数据类型 == 比较的是内存地址)
equals() : 它的作用也是判断两个对象是否相等。但它一般有两种使用情况：
情况1：类没有覆盖 equals() 方法。则通过 equals() 比较该类的两个对象时，等价于通过“==”比较这两个对象。
情况2：类覆盖了 equals() 方法。一般，我们都覆盖 equals() 方法来两个对象的]]></description><category></category></item><item><title><![CDATA[JAVA正则表达式matcher.find()和 matcher.matches()的区别]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106925212</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106925212</guid><author>juntong5813</author><pubDate>Tue, 23 Jun 2020 15:48:34 +0800</pubDate><description><![CDATA[注释：文章转载自 https://www.cnblogs.com/pxzbky/p/9998159.html，
JAVA正则表达式matcher.find()和 matcher.matches()的区别
1.find()方法是部分匹配，是查找输入串中与模式匹配的子串，如果该匹配的串有组还可以使用group()函数。
matches()是全部匹配，是将整个输入串与模式匹配，如果要验证一个输入的数据是否为数字类型或其他类型，一般要用matches()。
2.Pattern pattern= Pattern.co]]></description><category></category></item><item><title><![CDATA[Ngin简介]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106912354</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106912354</guid><author>juntong5813</author><pubDate>Mon, 22 Jun 2020 23:47:55 +0800</pubDate><description><![CDATA[这里写目录标题Nginx基本概念正向代理反向代理动静分离nginx 常用的命令启动命令关闭命令重新加载命令nginx.conf配置文件全局块events 块httphttp 全局块server 块全局 server 块location 块nginx 配置实例-反向代理nginx 配置实例-负载均衡nginx 配置实例-动静分离nginx 原理与优化参数配置nginx 搭建高可用集群
Nginx基本概念
正向代理
反向代理
动静分离
nginx 常用的命令
启动命令
关闭命令
重新加载命令
nginx.con]]></description><category></category></item><item><title><![CDATA[rabbimq订单超时使用延迟队列取消订单]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106892907</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106892907</guid><author>juntong5813</author><pubDate>Sun, 21 Jun 2020 23:17:18 +0800</pubDate><description><![CDATA[一：场景：在电商系统中，订单下单30分钟未付款，系统需要取消订单返回库存。这时候我们需要将消息发送到ttl延迟队列内，当消息到达废弃时间后会自动转发到ttl队列内配置的转发Exchange以及RouteKey绑定的对垒内完成消息消费
二：延迟队列流程图

三：RabbitmqConfig类配置信息
1.声明了普通消息通知队列的相关Exchange、Queue、Binding等配置，将mall.order.cancel.queue队列通过路由键mall.order.cancel绑定到了mall.order.c]]></description><category></category></item><item><title><![CDATA[RabbitMQ用户管理界面各个标签的解释，使用图片标注]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106886679</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106886679</guid><author>juntong5813</author><pubDate>Sun, 21 Jun 2020 16:03:30 +0800</pubDate><description><![CDATA[一：channels模块

二：exchanges模块

三：queues模块

四：connections模块

五：admin模块


]]></description><category></category></item><item><title><![CDATA[发现一遍很好的一篇描述http无状态的内容]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106749108</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106749108</guid><author>juntong5813</author><pubDate>Sun, 14 Jun 2020 17:44:55 +0800</pubDate><description><![CDATA[发现一遍很好的一篇描述http的内容
链接：https://www.cnblogs.com/bellkosmos/p/5237146.html

]]></description><category></category></item><item><title><![CDATA[类加载过程]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106701759</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106701759</guid><author>juntong5813</author><pubDate>Fri, 12 Jun 2020 01:36:44 +0800</pubDate><description><![CDATA[类加载过程
类从被加载到虚拟机内存中开始，到卸载出内存为止，它的整个生命周期包括：加载（Loading）、验证（Verification）、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中准备、验证、解析3个部分统称为连接（Linking）。如图所示。
这里写图片描述
加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的，类的加载过程必须按照这种顺序按部就班地开始，而解析阶段则不一定：它在某些]]></description><category></category></item><item><title><![CDATA[项目工程git版本控制实现]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106699076</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106699076</guid><author>juntong5813</author><pubDate>Thu, 11 Jun 2020 23:21:17 +0800</pubDate><description><![CDATA[一：先介绍几个名词概念：
A: master：主分支，主要用来版本发布；
B：develop：日常开发分支，该分支正常保存了开发的最新代码
C：feature：具体功能开发分支，只与develop分支交互
D：release：relese分支可以认为是master分支的未测试版。功能全部开发完成，将develop分支合并		
到release分支，测试没有问题并且到了发布日期就合并到master分支，进行发布；
E：hotfix：线上bug修复分支。
二：流程




三
三：以下两张图是完整的git流程图]]></description><category></category></item><item><title><![CDATA[BeanPostProcessor简介]]></title><link>https://blog.youkuaiyun.com/juntong5813/article/details/106596669</link><guid>https://blog.youkuaiyun.com/juntong5813/article/details/106596669</guid><author>juntong5813</author><pubDate>Sun, 07 Jun 2020 01:34:01 +0800</pubDate><description><![CDATA[BeanPostProcessor使用1. BeanPostProcessor简介2. BeanPostProcessor实例3. BeanFactoryPostProcessor简介4. BeanFactoryPostProcessor实例
1. BeanPostProcessor简介
BeanPostProcessor是Spring IOC容器给我们提供的一个扩展接口。接口声明如下：
public interface BeanPostProcessor {
    //bean初始化方法调用前被调用
 ]]></description><category></category></item></channel></rss>