<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[weixin_43193439的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/weixin_43193439</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; weixin_43193439]]></copyright><item><title><![CDATA[springboot使用正确的url、用户名、密码（密码为纯数字）连接mongodb出现认证失败问题]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/117430877</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/117430877</guid><author>weixin_43193439</author><pubDate>Sun, 06 Jun 2021 15:23:49 +0800</pubDate><description><![CDATA[springboot连接mongodb认证失败：
com.mongodb.MongoCommandException: Command failed with error 18: ‘Authentication failed.’ on server 119.29.97.99:27017.
解决方案：

]]></description><category></category></item><item><title><![CDATA[MySQL学习——InnoDB 的锁类型]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/108304675</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/108304675</guid><author>weixin_43193439</author><pubDate>Sun, 30 Aug 2020 17:14:05 +0800</pubDate><description><![CDATA[InnoDB 的锁类型
读锁（共享锁）、写锁（排他锁）、意向锁和MDL锁。

读锁
读锁简称 S 锁，一个事务获取了一个事务行的读锁，其他事务也能够获取到该行对应的读锁，但不能获得写锁，即一个事务在读取数据时，其他事务也可以读，但不能对该数据进行增删改的操作。
读锁有两种select 方式。第一种是自动提交模式下的 select 查询语句，不需要加任何锁，直接返回查询结果，这就是一致性非锁定读。第二种是通过 select … lock in share mode 在被读取的行记录或者行记录的范围上加一个读锁]]></description><category></category></item><item><title><![CDATA[MySQL学习——truncate 和 delete]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/108286287</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/108286287</guid><author>weixin_43193439</author><pubDate>Fri, 28 Aug 2020 20:24:38 +0800</pubDate><description><![CDATA[不同点：

truncate 不能回滚，delete 可以回滚；
truncate 清空表的自增 id 属性，从 1 开始重新记录，而 delete 不会清空表的自增 id 属性；
truncate 是 DDL 语句操作，delete 是 DML 语句操作。

共同点：

它们都能清空表的数据


...]]></description><category></category></item><item><title><![CDATA[MySQL学习——事务]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/108280101</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/108280101</guid><author>weixin_43193439</author><pubDate>Fri, 28 Aug 2020 20:17:41 +0800</pubDate><description><![CDATA[事务
事务是一组 DML 语句的集合。MySQL 的事务默认是自提交模式，开启事务必须以 begin 命令开始，以 commit 或者rollback 命令结束。

事务的特性


原子性
指事务中包含的所有操作要么全部都做，要么都不做
一致性
一致性指数据库中的数据在事务操作前和事务处理后必须都满足业务规则约束。例如：甲和乙的总金额在转账钱和转账后必须是一致的，如有不一致，则必须是短暂的，且只有在事务提交前才会出现的。
隔离性
隔离性是数据库允许多个并发事务同时对数据进行读写和修改的能力，隔离性可以防止多]]></description><category></category></item><item><title><![CDATA[算法学习 —— 链表反转]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/108169145</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/108169145</guid><author>weixin_43193439</author><pubDate>Sat, 22 Aug 2020 15:30:44 +0800</pubDate><description><![CDATA[链表反转
链表反转的步骤：

定义一个新的节点  newNode
遍历需要反转的链表 node，遍历的同时进行反转，首先获得节点 newNode的下一个节点（保存于 newNodeNext），接着获得需要反转的节点的当前节点（nowNode），将需要遍历的节点的当前节点指向下一个节点（node = node.next），将前期复制的当前节点（nowNode）的下一节点指向新节点的下一节点（newNodeNext），将新节点的下一节点指向前期复制的当前节点（nowNode）。

代码实现：
/**
 * 反转]]></description><category></category></item><item><title><![CDATA[算法学习  -- 稀疏数组与普通数组之间的转换]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/108162848</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/108162848</guid><author>weixin_43193439</author><pubDate>Sat, 22 Aug 2020 01:11:11 +0800</pubDate><description><![CDATA[普通数组转换为稀疏数组

普通数组 array[] 转化为稀疏数组 arr2[][] 的步骤（大部分元素为0的情况）：

统计不为 0 的数组的个数 num
创建一个二维数组 arr2[num][3] 用于存放稀疏数组的值
设置 arr2[0][0] 的值设置为 数组 array 的行数
设置 arr2[0][1] 的值设置为数组 array 的列数
设置 arr2[0][2] 的值设置为数组 array 中的非 0 的元素的个数
逐一遍历 数组 array ，将非 0 的值的 x 值写入 arr2[i][]]></description><category></category></item><item><title><![CDATA[八皇后问题——递归解法]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/107889141</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/107889141</guid><author>weixin_43193439</author><pubDate>Sun, 09 Aug 2020 03:39:57 +0800</pubDate><description><![CDATA[八皇后问题
解决思路：


定义一个一维数组 queue[] 用于存放各个皇后的位置（由于每一行只能放一个皇后，因此第 n 个皇后存放于第 n-1行）


依次将 8 个皇后放入棋盘，首先将第 1 个皇后放到第一行第一列，判断是否有冲突，若有冲突，则将第一个皇后向右边移动一列，若没冲突，则使用递归放入第 2 个皇后，接着判断前面的皇后是否有冲突，有冲突则向右移动一列，没冲突则依照放入第1、2个皇后的步骤继续放入剩下的皇后，当即将要放入的皇后的个数大于需要放入的皇后的个数时，输出queue数组中存放的值（即满]]></description><category></category></item><item><title><![CDATA[使用springcloud集成rabbitmq时出现socket closed问题]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/106534157</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/106534157</guid><author>weixin_43193439</author><pubDate>Wed, 03 Jun 2020 22:12:42 +0800</pubDate><description><![CDATA[2020-06-03 22:09:28.172 ERROR 5224 --- [:0:0:0:0:1:5672] c.r.c.impl.ForgivingExceptionHandler     : An unexpected connection driver error occured

java.net.SocketException: socket closed
	at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.8.0_]]></description><category></category></item><item><title><![CDATA[算法（一） 动态规划法]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/105283824</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/105283824</guid><author>weixin_43193439</author><pubDate>Fri, 03 Apr 2020 02:49:54 +0800</pubDate><description><![CDATA[动态规划法之 0-1 背包问题
使用一个二维数组 val[i][j] 存放当前容量下的最大价值，其中第 i 行表示可选物品中加入 第 i 个物品， j 为当前背包的假设容量，val[i][j] 表示假设当前的背包的最大容量为 j ，在可选的物品中加入第 i 个物品后，背包能装入的物品的最大价值，val[i][j] 值的选取方法如下：

初始化第 0 行和第 0 列为0 ，表示当没有可选物品或者当前...]]></description><category></category></item><item><title><![CDATA[Java学习 - List集合]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/105068734</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/105068734</guid><author>weixin_43193439</author><pubDate>Tue, 24 Mar 2020 14:19:05 +0800</pubDate><description><![CDATA[List集合
Java主要包含4 种集合（List、Queue、Set和Map），其中List、Queue、Set的父类都是Collection。
&nbsp;&nbsp;&nbsp;
1. List 集合（对象可重复的、有序的，即集合中的对象的顺序和对象进入集合的顺序一致）


ArrayList:基于数组实现，增删慢，查询快，线程不安全


ArrayList 是基于数组实现的，ArrayLi...]]></description><category></category></item><item><title><![CDATA[算法（三） 求链表的中间节点技巧]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/105046026</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/105046026</guid><author>weixin_43193439</author><pubDate>Mon, 23 Mar 2020 12:32:40 +0800</pubDate><description><![CDATA[快慢指针法
使用两个指针同时遍历链表，一个遍历的步长为1（慢指针，即 node= node.next），另一个遍历的步长为2（快指针,即 node = node.next.next），当快指针到达链表尾部时，根据他们的步长的差值，则此时慢指针走过的长度为快指针的一半，即慢指针刚好到达链表的中间节点。

...]]></description><category></category></item><item><title><![CDATA[设计模式学习（一）观察者模式]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/104898095</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/104898095</guid><author>weixin_43193439</author><pubDate>Mon, 16 Mar 2020 14:10:23 +0800</pubDate><description><![CDATA[观察者模式
适用场景
当一个对象发生变化时，所有依赖于他的对象都会得到通知而被自动更新
例子：
当气象站的信息发布的温度、湿度以及气压发生变化时，观察者的相关数据也随之改变
UML类图

实现代码：
被观察者接口
public interface Subject {

    public void registerObserver(Observer observer);

    public ...]]></description><category></category></item><item><title><![CDATA[springboot（一）@Value注解]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/104858813</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/104858813</guid><author>weixin_43193439</author><pubDate>Mon, 16 Mar 2020 07:08:19 +0800</pubDate><description><![CDATA[@Value注解的用法

使用@Value注入属性的值：@Value("${server.port}")
注入的属性不存在时提供默认值 @Value("${server.port:8080}")
@Value注解使用的注意事项：
– @Value不能在任何spring 管理的Bean中使用，因为@Value 本身是通过AutowiredAnnotationBeanProcessor实现的，它是Be...]]></description><category></category></item><item><title><![CDATA[算法（二）  字符串中的第一个唯一字符]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/104352364</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/104352364</guid><author>weixin_43193439</author><pubDate>Mon, 17 Feb 2020 04:28:54 +0800</pubDate><description><![CDATA[求字符串中第一个只出现一次的字符
思路：

将字符串转化为字符数组
新建一个长度为128的 int 数组（标准ASCII码字符集总共的编码有128个,包括32个通用控制符,10个十进制数码,52个英文大小写字母和34个专用符号 ）
将当前字符的 ASCII 值作为数组的下标，该下标对应的数组的值为该字符串出现的次数（未出现为0默认值，出现一次为1，出现多次为-1）
根据字符串数组的所有 ASCII...]]></description><category></category></item><item><title><![CDATA[算法（一） 求集合中重复出现或者不重复出现的数值]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/104305541</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/104305541</guid><author>weixin_43193439</author><pubDate>Fri, 14 Feb 2020 01:58:00 +0800</pubDate><description><![CDATA[1. 求集合中唯一重复的数或者唯一不重复的数
求法一：利用异或
两个相同的数进行异或，结果为0
将集合中所有的元素进行异或运算，得到的结果为最终的唯一重复的数或者唯一不重复的数，
原因：A ^ B ^ C ^ D ^ A ^ C ^ B=(A ^ A) ^( B  ^ B)  ^ (C  ^ C) ^D=D，
例子：一个集合中只有一个数是只出现一次，其他数出现两次
    public int s...]]></description><category></category></item><item><title><![CDATA[随笔（一） - - docker学习]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/104272631</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/104272631</guid><author>weixin_43193439</author><pubDate>Wed, 12 Feb 2020 01:29:35 +0800</pubDate><description><![CDATA[前言：
docker的使用目的：

更快地构建所需要的环境
使上线环境能够更加贴近开发环境
实现在计算机上的各个不同应用的隔离
更容易将应用的运行环境打包迁移

1. 启动docker并设置开机启动
 systemctl start docker
 systemctl enable docker.service

2.docker安装mysql并设置root密码
docker pull mysql...]]></description><category></category></item><item><title><![CDATA[Java向特定的网址请求数据方式二（ jsoup解析）]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/100802619</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/100802619</guid><author>weixin_43193439</author><pubDate>Fri, 13 Sep 2019 14:40:27 +0800</pubDate><description><![CDATA[Java向特定的网址请求数据方式二（ jsoup解析）
**注：**虽然Json可以替代HTTPClient直接发起请求解析数据，但jsoup对多线程，连接池，代理等等方式的支持不是很好，所以一般jsoup仅仅作为Html解析工具使用
添加maven依赖
&lt;!--Jsoup--&gt;
&lt;dependency&gt;
    &lt;groupId&gt;org.jsoup&lt;/g...]]></description><category></category></item><item><title><![CDATA[java向网站发送请求的方式一（HttpClient）]]></title><link>https://blog.youkuaiyun.com/weixin_43193439/article/details/100799570</link><guid>https://blog.youkuaiyun.com/weixin_43193439/article/details/100799570</guid><author>weixin_43193439</author><pubDate>Fri, 13 Sep 2019 13:51:12 +0800</pubDate><description><![CDATA[Java向指定网址请求数据方式一HttpClientJava向指定网址请求数据方式一HttpClient带参数的post请求带参数的get请求通过线程池获取HttpClient
Java向指定网址请求数据方式一HttpClient
带参数的post请求
 //创建HttpClient对象
    CloseableHttpClient httpClient = HttpClients.create...]]></description><category></category></item></channel></rss>