<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Blog_rookie的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Blog_rookie</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Blog_rookie]]></copyright><item><title><![CDATA[刷新vue页面，解决数据丢失]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/112527318</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/112527318</guid><author>Blog_rookie</author><pubDate>Tue, 12 Jan 2021 14:57:35 +0800</pubDate><description><![CDATA[在做vue项目的过程中有时候会遇到一个问题，就是进行页面刷新的时候，页面的数据会丢失，出现这个问题的原因是因为当用vuex做全局状态管理的时候，store中的数据是保存在运行内存中的，页面刷新时会重新加载vue实例，store中的数据就会被重新赋值，因此数据就丢失了，解决方式如下：
解决方法一：
最先想到的应该就是利用localStorage/sessionStorage将数据储存在外部，做一个持久化储存，下面是利用localStorage存储的具体方案：
方案一：由于state中的数据是响应式的，而数据又]]></description><category></category></item><item><title><![CDATA[使用Spring Boot Mybatis 搞反向工程，简直不要太方便]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/112470228</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/112470228</guid><author>Blog_rookie</author><pubDate>Mon, 11 Jan 2021 15:14:19 +0800</pubDate><description><![CDATA[1. 拷贝 Mybatis 反向工程配置文件到项目的根目录下

2. 根据项目及表的情况，修改 GeneratorMapper.xml 配置

如果使用 高版本 ， 驱动类变为：com.mysql.cj.jdbc.Driver
url 后面应该加属性 nullCatalogMeansCurrent=true ，否则生成有问题


当前版本 MySQL 数据库为 5.7

主要根据注释来修改自己的内容
&lt;?xml version="1.0" encoding="UTF-8"?&gt;  
&lt;!DO]]></description><category></category></item><item><title><![CDATA[Nginx只能负载均衡？不、不、不；它比你想象的还要强大！]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/112350023</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/112350023</guid><author>Blog_rookie</author><pubDate>Fri, 08 Jan 2021 11:52:57 +0800</pubDate><description><![CDATA[Nginx应该是现在最火的web和反向代理服务器，没有之一。她是一款诞生于俄罗斯的高性能web服务器，尤其在高并发情况下，相较Apache，有优异的表现。那除了负载均衡，她还有什么其他的用途呢，下面我们来看下。
一、负载均衡
Nginx通过反向代理可以实现服务的负载均衡，避免了服务器单节点故障，把请求按照一定的策略转发到不同的服务器上，达到负载的效果。常用的负载均衡策略有：


轮询
将请求按顺序轮流地分配到后端服务器上，它均衡地对待后端的每一台服务器，而不关心服务器实际的连接数和当前的系统负载。
加权轮.]]></description><category></category></item><item><title><![CDATA[JDK 16 即将发布，速览新特性！]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/112260588</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/112260588</guid><author>Blog_rookie</author><pubDate>Wed, 06 Jan 2021 11:17:13 +0800</pubDate><description><![CDATA[你还能追上 Java 的更新速度吗？

当开发者深陷 Java 8 版本之际，这边下一版本 Java 16 有了最新的消息，与 Java 15 一样，作为短期版本，Oracle 仅提供 6 个月的支持。
根据发布计划，JDK 16 将在 12 月 10 日和 2021 年 1 月 14 进入 Rampdown 阶段，2021 年 2 月 4 日到 2 月 18 日进入发布候选阶段。最终版本预计于 2021 年 3 月 16 日正式发布。
日前， JDK 16 揭晓了即将到来的新功能，接下来，我们将一睹为快.]]></description><category></category></item><item><title><![CDATA[加强版 Redis，又一款国产高性能 KV 存储数据库开源了！]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111997046</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111997046</guid><author>Blog_rookie</author><pubDate>Tue, 05 Jan 2021 14:34:49 +0800</pubDate><description><![CDATA[项目简介
Tendis是腾讯互娱CROS DBA团队 &amp; 腾讯云数据库团队自主设计和研发的分布式高性能KV存储数据库，兼容Redis核心数据结构与接口。
可提供大容量、低成本、强持久化的数据库能力，适用于兼容Redis协议、需要大容量且较高访问性能的温冷数据存储场景。
Tendis目前已经被应用到腾讯内、外部大型项目中。
集群架构

Tendis使用去中心化集群架构，每个数据节点都拥有全部的路由信息，用户可以访问集群中的任意节点，并且通过redis的move协议，最终路由到正确的节点。
每个Tend]]></description><category></category></item><item><title><![CDATA[Java 泛型 T，E，K，V，?，傻傻分不清？]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111997196</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111997196</guid><author>Blog_rookie</author><pubDate>Tue, 05 Jan 2021 11:51:18 +0800</pubDate><description><![CDATA[前言
Java 泛型（generics）是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制，该机制允许开发者在编译时检测到非法的类型。
泛型的本质是参数化类型，也就是说所操作的数据类型被指定为一个参数。
泛型带来的好处
在没有泛型的情况的下，通过对类型 Object 的引用来实现参数的“任意化”，“任意化”带来的缺点是要做显式的强制类型转换，而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况，编译器可能不提示错误，在运行的时候才出现异常，这是本身就是一]]></description><category></category></item><item><title><![CDATA[撸代码速度提升10倍的技巧，收藏慢慢看！！！【内含福利】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111984645</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111984645</guid><author>Blog_rookie</author><pubDate>Wed, 30 Dec 2020 14:32:25 +0800</pubDate><description><![CDATA[今天带大家提升一下写代码的速度，idea 是我们用的最多的开发工具，这个工具有个特别的牛逼的功能：live template。
这个功能掌握之后，撸代码的速度至少翻两番。
先带大家见识一下这玩意的威力。
idea 中随便创建一个类，比如创建一个 LiveTemplate.java，如下：

在光标的位置输入：psvm，然后按 Tab 或者 enter 键，神奇的效果出现了，main 方法瞬间出现了。

这就是 idea 中 live template 的功能，俗称模板功能，可以将一段代码创建为一个模板，然后]]></description><category></category></item><item><title><![CDATA[那些总是写“烂代码”的同学，强烈推荐你用这款 IDEA 插件！]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111957973</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111957973</guid><author>Blog_rookie</author><pubDate>Wed, 30 Dec 2020 11:56:24 +0800</pubDate><description><![CDATA[1、目标

  idea集成sonar的代码检查，实现可以在提交代码前就检查你的代码，而不是将代码提交之后，之后再去检查。
  Sonar可以从以下七个维度检测代码质量，而作为开发人员至少需要处理前5种代码质量问题
1、不遵循代码标准 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
2、潜在的缺陷 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的缺陷
3、糟糕的复杂度分布 文件、类、方法等，如果复杂度过高将难以]]></description><category></category></item><item><title><![CDATA[基于SpringBoot，来实现MySQL读写分离技术]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111920003</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111920003</guid><author>Blog_rookie</author><pubDate>Tue, 29 Dec 2020 15:38:17 +0800</pubDate><description><![CDATA[前言

首先思考一个问题:在高并发的场景中,关于数据库都有哪些优化的手段？常用的有以下的实现方法:读写分离、加缓存、主从架构集群、分库分表等，在互联网应用中,大部分都是读多写少的场景,设置两个库,主库和读库。
主库的职能是负责写,从库主要是负责读,可以建立读库集群,通过读写职能在数据源上的隔离达到减少读写冲突、 释压数据库负载、保护数据库的目的。在实际的使用中,凡是涉及到写的部分直接切换到主库，读的部分直接切换到读库，这就是典型的读写分离技术。本篇博文将聚焦读写分离,探讨如何实现它。

目录


一: 主.]]></description><category></category></item><item><title><![CDATA[如何弄一个短信验证码登录？]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111865972</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111865972</guid><author>Blog_rookie</author><pubDate>Mon, 28 Dec 2020 14:42:03 +0800</pubDate><description><![CDATA[构造手机验证码：使用random对象生成要求的随机数作为验证码，例如4位验证码:1000~9999之间随机数；
使用接口向短信平台发送手机号和验证码数据，然后短信平台再把验证码发送到制定手机号上，接口参数一般包括：目标手机号，随机验证码(或包含失效时间)，平台接口地址，平台口令；
保存接口返回的信息（一般为json文本数据，然后需转换为json对象格式）；
将手机号–验证码、操作时间存入Session中，作为后面验证使用；
接收用户填写的验证码及其他数据；
对比提交的验证码与Session中的验证码是否一.]]></description><category></category></item><item><title><![CDATA[Oracle 慌了！华为终于对 JDK 下手了！]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111685951</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111685951</guid><author>Blog_rookie</author><pubDate>Mon, 28 Dec 2020 14:23:02 +0800</pubDate><description><![CDATA[支持特性
安装方式
项目地址

近日有开发者在华为 openEuler操作系统源码中发现了华为的 OpenJDK 发行版，名为“毕昇 JDK 8（bishengjdk-8）”。
没错，就是发明了活字印刷术的那个毕昇。
根据介绍，毕昇JDK是华为内部OpenJDK定制版Huawei JDK的开源版本，是一个高性能、可用于生产环境的OpenJDK发行版。
Huawei JDK运行在华为内部500多个产品上，积累了大量使用场景和java开发者反馈的问题和诉求，解决了业务实际运行中遇到的多个问题，并在ARM架构上.]]></description><category></category></item><item><title><![CDATA[拒绝接口裸奔！开放 HTTP API 接口签名验证！]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111699352</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111699352</guid><author>Blog_rookie</author><pubDate>Mon, 28 Dec 2020 14:22:13 +0800</pubDate><description><![CDATA[AccessKey&amp;SecretKey （开放平台）

请求身份
防止篡改
重放攻击
实现


Token&amp;AppKey（APP）

Token身份验证
Token+AppKey签名验证
实现
后续请求



接口安全问题

请求身份是否合法？
请求参数是否被篡改？
请求是否唯一？

AccessKey&amp;SecretKey （开放平台）


请求身份

为开发者分配AccessKey（开发者标识，确保唯一）和SecretKey（用于接口加密，确保不易被穷举，生成算法不易被猜测）。
.]]></description><category></category></item><item><title><![CDATA[2020最新RabbitMQ图文教程通俗易懂版（下）【内附视频链接】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111617292</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111617292</guid><author>Blog_rookie</author><pubDate>Fri, 25 Dec 2020 11:36:20 +0800</pubDate><description><![CDATA[RabbitMQ消息的事务机制
在使用RabbitMQ的时候，我们可以通过消息持久化操作来解决因为服务器的异常奔溃导致的消息丢失，除此之外我们还会遇到一个问题，当消息的发布者在将消息发送出去之后，消息到底有没有正确到达broker代理服务器呢？如果不进行特殊配置的话，默认情况下发布操作是不会返回任何信息给生产者的，也就是默认情况下我们的生产者是不知道消息有没有正确到达broker的，如果在消息到达broker之前已经丢失的话，持久化操作也解决不了这个问题，因为消息根本就没到达代理服务器，你怎么进行持久化，那]]></description><category></category></item><item><title><![CDATA[2020最新RabbitMQ图文教程通俗易懂版（上）【内附视频链接】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111617043</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111617043</guid><author>Blog_rookie</author><pubDate>Fri, 25 Dec 2020 11:35:47 +0800</pubDate><description><![CDATA[RabbitMQ学习目标

MQ简介
在计算机科学中，消息队列（英语：Message queue）是一种进程间通信或同一进程的不同线程间的通信方式，软件的贮列用来处理一系列的输入，通常是来自用户。消息队列提供了异步的通信协议，每一个贮列中的纪录包含详细说明的数据，包含发生的时间，输入设备的种类，以及特定的输入参数，也就是说：消息的发送者和接收者不需要同时与消息队列互交。消息会保存在队列中，直到接收者取回它。
实现
​     消息队列常常保存在链表结构中。拥有权限的进程可以向消息队列中写入或读取消息。
目前]]></description><category></category></item><item><title><![CDATA[2020最新RabbitMQ图文教程通俗易懂版（中）【内附视频链接】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111617233</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111617233</guid><author>Blog_rookie</author><pubDate>Fri, 25 Dec 2020 11:34:47 +0800</pubDate><description><![CDATA[简单模式队列
在这部分的使用指南中，我们要用 Java 写两个程序；一个是生产者，他发送一个消息，另一个是消费者，它接收消息，并且把消息打印出来。我们将会忽略一些Java API 的细节，而是将注意力主要放在我们将要做的这件事上，这件事就是发送一个 “Hello World” 消息。
在下面的图中，“P” 代表生产者，而 “C” 代表消费者。中间的就是一个 Queue，一个消息缓存区。

创建项目




添加依赖

&lt;!-- rabbitmq依赖 --&gt;
&lt;dependency&gt;
]]></description><category></category></item><item><title><![CDATA[最新Redis图文教程（下）【内附学习视频】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111596600</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111596600</guid><author>Blog_rookie</author><pubDate>Thu, 24 Dec 2020 11:44:15 +0800</pubDate><description><![CDATA[SpringDataRedis
创建项目
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pFxejA2i-1608720390447)(Redis.assets/image78.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ePPQROGd-1608720390448)(Redis.assets/image79.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6iceJFrg-1608720]]></description><category></category></item><item><title><![CDATA[最新Redis图文教程（中）【内附学习视频】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111596639</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111596639</guid><author>Blog_rookie</author><pubDate>Thu, 24 Dec 2020 11:44:00 +0800</pubDate><description><![CDATA[主备切换
主从节点redis.conf配置
参照读写分离的相应配置
修改sentinel-common.conf 哨兵公共配置文件
从redis解压目录下复制sentinel.conf至/opt/redis/conf/
cp sentinel.conf /opt/redis/conf/sentinel-common.conf

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9YGORg4I-1608720420837)(Redis.assets/image61.png)]
注]]></description><category></category></item><item><title><![CDATA[最新Redis图文教程（上）【内附学习视频】]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111596546</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111596546</guid><author>Blog_rookie</author><pubDate>Thu, 24 Dec 2020 11:39:22 +0800</pubDate><description><![CDATA[Redis 学习目标

Redis的介绍及安装
Redis是什么？
Redis 是一个开源（BSD许可）的，内存中的数据结构存储系统，它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构，如 字符串（strings），散列（hashes）， 列表（lists）， 集合（sets）， 有序集合（sorted sets） 与范围查询， bitmaps， hyperloglogs 和 地理空间（geospatial） 索引半径查询。 Redis 内置了复制（replication），LUA脚本（Lua ]]></description><category></category></item><item><title><![CDATA[全新最简易Git教程（内含视频链接）]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111573468</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111573468</guid><author>Blog_rookie</author><pubDate>Wed, 23 Dec 2020 11:09:08 +0800</pubDate><description><![CDATA[学习目标

版本控制
​	版本控制是一种记录若干文件内容变化，以便将来查阅特定版本修订情况的系统. 简单讲就是备份和记录. 接下来我们要了解三种不同版本控制的发展历程.。
本地版本控制系统
​	人们把项目拷贝到本地磁盘上进行备份, 然后以命名方式来区分. 这种做法好处是简单, 但坏处也不少比如备份比较多或许就会混淆不同版本之间的区别. 那为了解决这个问题, 有人就开发了一个本地版本的管理系统, 它的结构图如下:

本地版本管理就是把版本号存入数据库来记录文件的历次更新差异。
集中化版本控制系统
​	本地版本]]></description><category></category></item><item><title><![CDATA[面向对象一点通内附学习视频]]></title><link>https://blog.youkuaiyun.com/Blog_rookie/article/details/111523965</link><guid>https://blog.youkuaiyun.com/Blog_rookie/article/details/111523965</guid><author>Blog_rookie</author><pubDate>Tue, 22 Dec 2020 12:02:23 +0800</pubDate><description><![CDATA[typora-root-url: images
面向对象
大纲

类与对象
面向对象与面向过程
面向过程和面向对象都是对软件分析、设计和开发的一种思想,它指导着人们以不同的方式去分析、设计和开发软件。早期先有面向过程思想，随着软件规模的扩大，问题复杂性的提高，面向过程的弊端越来越明显的显示出来，出现了面向对象思想并成为目前主流的方式。两者都贯穿于软件分析、设计和开发各个阶段，对应面向对象就分别称为面向对象分析（OOA）、面向对象设计（OOD）和面向对象编程（OOP）。C语言是一种典型的面向过程语言，Jav.]]></description><category></category></item></channel></rss>