<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[black210的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/black210</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; black210]]></copyright><item><title><![CDATA[安全框架]]></title><link>https://blog.youkuaiyun.com/black210/article/details/106299199</link><guid>https://blog.youkuaiyun.com/black210/article/details/106299199</guid><author>black210</author><pubDate>Sat, 23 May 2020 13:41:50 +0800</pubDate><description><![CDATA[文章目录前言概念无状态登录常见的认证机制JWT 鉴权非对称加密Spring中的拦截器SpringSecurity简单示例Shiro安全框架功能模块Shiro 架构执行流程分析示例准备工作登录 ControllerDao 与 service 示意异常类自定义 Realm会话管理Shiro 的配置shiro 过滤器授权使用 Zuul 的过滤器自定义过滤器
前言
在 Web 开发中，安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求，但是应该在应用开发的初期就考虑进来。
如果在应用开发的后期才考虑安全的]]></description><category></category></item><item><title><![CDATA[算法入门]]></title><link>https://blog.youkuaiyun.com/black210/article/details/106165050</link><guid>https://blog.youkuaiyun.com/black210/article/details/106165050</guid><author>black210</author><pubDate>Sat, 16 May 2020 21:00:05 +0800</pubDate><description><![CDATA[文章目录算法入门概述排序算法冒泡排序希尔排序快速排序归并排序二叉树贪心动态规划
算法入门
概述

什么是算法？

算法简单来说就是解决问题的步骤。
设计原则：正确性、可读性、健壮性 bug、高效率与低存储。内存+CPU内存占用最小，CPU占用最小，运算速度最快。
评价算法的两个重要指标：


时间复杂度：运行一个程序所花费的时间。去掉常数，保留最高阶
一个 while 一个 log（n），一个 for 一个 n

常数性时间复杂度 O(1)
线性性 O(n)  单层for
对数性 nlog(n) 快速排序
]]></description><category></category></item><item><title><![CDATA[Mycat使用]]></title><link>https://blog.youkuaiyun.com/black210/article/details/106131569</link><guid>https://blog.youkuaiyun.com/black210/article/details/106131569</guid><author>black210</author><pubDate>Thu, 14 May 2020 23:47:51 +0800</pubDate><description><![CDATA[文章目录Mycat使用主从复制进入正题概述安装使用读写分离垂直分库水平分表关联表分表小结全局序列数据库方式自主生成
Mycat使用
主从复制

复制的基本原理

slave 会从master 读取 binlog 来进行数据同步


master将改变记录到二进制日志（binary log）。这些记录过程叫做二进制日志事件，binary log events
slave 将 master 的 binary log events 拷贝到它的中继日志（relay log）
slave 重做中继日志中的事件，将改变]]></description><category></category></item><item><title><![CDATA[索引优化]]></title><link>https://blog.youkuaiyun.com/black210/article/details/106122022</link><guid>https://blog.youkuaiyun.com/black210/article/details/106122022</guid><author>black210</author><pubDate>Thu, 14 May 2020 16:06:16 +0800</pubDate><description><![CDATA[索引优化
概述

性能下降SQL 慢，执行时间长，等待时间长


数据过多（单表500w）：分库分表
关联太多的表，太多 join：SQL 优化
没有充分利用索引：索引建立
服务器调优及各个参数设置：调整 my.cnf


索引

索引是帮助MySQL高效获取的数据结构。
MySQL的 BTree 索引使用的是B树中的 B+Tree。

B树和B+树的区别


B- 树的关键字和记录是放在一起的，叶子节点可以看作外部节点，不包含任何信息；
B+ 树的非叶子节点中只有关键字和指向下一个节点的索引，记录只放在叶]]></description><category></category></item><item><title><![CDATA[MySQL 拓展]]></title><link>https://blog.youkuaiyun.com/black210/article/details/106087008</link><guid>https://blog.youkuaiyun.com/black210/article/details/106087008</guid><author>black210</author><pubDate>Tue, 12 May 2020 22:42:52 +0800</pubDate><description><![CDATA[MySQL 拓展
视图
本身是一个虚拟表，它的数据来自于表，通过执行时动态生成，占用较小,只保存了sql逻辑，不保存查询结果。临时表
场景：多个地方用到同样的查询结果；该查询结果使用的sql语句较复杂
create view 视图名
as
查询语句;

create or replace view 视图名
as
查询语句;
alter view 视图名
as
查询语句

drop view 视图1，视图2,...;

desc 视图名;
show create view 视图名;

CREATE VIEW ]]></description><category></category></item><item><title><![CDATA[JMM ？傻傻分不清]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105522449</link><guid>https://blog.youkuaiyun.com/black210/article/details/105522449</guid><author>black210</author><pubDate>Tue, 14 Apr 2020 22:06:10 +0800</pubDate><description><![CDATA[文章目录java 内存模型原子性可见性有序性指令重排数据依赖性as-if-serialMemory Barrierhappens-beforeCAS乐观锁与悲观锁原子类Synchronized 优化对象头与 Monitor锁总览偏向锁轻量级锁自旋策略锁膨胀重量锁锁消除锁粗化公平锁其它优化减少上锁时间减少锁的粒度读写分离
java 内存模型

什么是 JMM ？

Java Memory Model...]]></description><category></category></item><item><title><![CDATA[入门 JVM 这一篇就够了]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105491617</link><guid>https://blog.youkuaiyun.com/black210/article/details/105491617</guid><author>black210</author><pubDate>Mon, 13 Apr 2020 16:41:15 +0800</pubDate><description><![CDATA[写在前面：
本来是想简短点的，可是越写越多
这里主要介绍了 JVM，至于 JMM 还会再整理

文章目录JVM概述运行时内存结构程序计数器虚拟机栈本地方法栈堆方法区常量池直接内存内存溢出与内存泄漏逃逸分析一个类的分析垃圾回收如何判断对象可以回收？方法区回收垃圾回收算法垃圾收集器内存分配与回收策略类加载小结一下类加载过程类加载器实例化对象对象的形成过程对象内存分配规则对象的访问对象的创建过程
JV...]]></description><category></category></item><item><title><![CDATA[Java8相关特性]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105368940</link><guid>https://blog.youkuaiyun.com/black210/article/details/105368940</guid><author>black210</author><pubDate>Tue, 07 Apr 2020 17:16:49 +0800</pubDate><description><![CDATA[前言
Java 8 是 Java 的一个重大版本，有人认为，虽然这些新特性令 Java 开发人员十分期待，但同时也需要花不少精力去学习。在这一小节中，我们将介绍 Java 8 的大部分新特性。
Lambda 表达式
java8 引入了一个新的操作符-&gt;，它允许我们将函数当成参数传递给某个方法，或者把代码本身当作数据处理。以前的话只能使用匿名内部类。（省去定义，重写方法，直接表达）
Lambd...]]></description><category></category></item><item><title><![CDATA[RabbitMQ快速入门]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105333922</link><guid>https://blog.youkuaiyun.com/black210/article/details/105333922</guid><author>black210</author><pubDate>Sun, 05 Apr 2020 21:42:47 +0800</pubDate><description><![CDATA[文章目录1.概述2.消息队列2.1. JMS2.2.AMQP2.3. JMS vs AMQP2.4.常见MQ产品3.RabbitMQ3.1.核心概念Producer 和 ConsumerExchange(交换器)Binding(绑定)Queue(消息队列)Broker（消息中间件的服务节点）3.2.概念整理表3.3.工作机制4.六种消息模型基本消息模型work 消息模型订阅模型-Fanout订阅模...]]></description><category></category></item><item><title><![CDATA[EleasticSearch快速入门]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105317047</link><guid>https://blog.youkuaiyun.com/black210/article/details/105317047</guid><author>black210</author><pubDate>Sat, 04 Apr 2020 21:08:44 +0800</pubDate><description><![CDATA[1.概述
1.1. ElasticSearch

什么是 ElasticSearch ？

Elaticsearch，简称为es， es是一个开源的高扩展的分布式全文检索引擎，它可以近乎实时的存储、检索数据；本身扩展性很好，可以扩展到上百台服务器，处理 PB 级别的数据。es 也使用 Java 开发并使用 Lucene 作为其核心来实现所有索引和搜索的功能，但是它的目的是通过简单的 RESTful...]]></description><category></category></item><item><title><![CDATA[SpringCloud快速入门]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105281373</link><guid>https://blog.youkuaiyun.com/black210/article/details/105281373</guid><author>black210</author><pubDate>Thu, 02 Apr 2020 22:48:53 +0800</pubDate><description><![CDATA[文章目录1.初识 SpringCloud1.1.微服务1.2.简介2.Eureka 注册中心2.1.简易模拟一个微服务2.1.1.搭建EurekaServer:2.1.2.注册到Eureka2.1.3.从Eureka获取服务2.2.Eureka详解2.2.1.基础架构2.2.2.高可用的Eureka Server2.2.3.服务提供者2.2.4.服务消费者2.2.5.失效剔除和自我保护3.Ribb...]]></description><category></category></item><item><title><![CDATA[Web 前端快速复习二]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105257904</link><guid>https://blog.youkuaiyun.com/black210/article/details/105257904</guid><author>black210</author><pubDate>Wed, 01 Apr 2020 22:50:10 +0800</pubDate><description><![CDATA[文章目录前言1.JQuery1.1.概述1.2.快速入门1.3.选择器1.3.1.基本操作学习1.3.2.选择器分类1.4.DOM操作1.4.1.内容操作1.4.2.属性操作1.4.3.CRUD操作1.5.动画1.6.遍历1.61. **js 的遍历方式**1.62. **jq 的遍历方式**1.7.事件的绑定1.8.增强JQuery的功能1.9.杂项1.9.1.表单验证1.9.2.其它方法.da...]]></description><category></category></item><item><title><![CDATA[Web 前端快速复习一]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105234892</link><guid>https://blog.youkuaiyun.com/black210/article/details/105234892</guid><author>black210</author><pubDate>Tue, 31 Mar 2020 23:00:33 +0800</pubDate><description><![CDATA[文章目录前言1.Web概述1.1.软件架构1.2.B/S架构详解2.HTML基础2.1.概述2.2.快熟入门2.3.标签学习（部分）2.3.1.文件标签：2.3.2.文本标签：2.3.3.图片标签：2.3.4.列表标签：2.3.5.链接标签：2.3.6.div 和 span：2.3.7.语义化标签：2.3.8.表格标签：2.4.表单标签2.4.1.表单：2.4.2.表单项标签：3.CSS基础3.1...]]></description><category></category></item><item><title><![CDATA[SpringBoot]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105178006</link><guid>https://blog.youkuaiyun.com/black210/article/details/105178006</guid><author>black210</author><pubDate>Sun, 29 Mar 2020 14:13:29 +0800</pubDate><description><![CDATA[1.了解 SpringBoot
人们把 Spring Boot称为搭建程序的脚手架。其最主要作用就是帮我们快速的构建庞大的spring项目，并且尽可能的减少一切xml配置，做到开箱即用，迅速上手，让我们关注于业务而非配置。
java一直被人诟病的一点就是臃肿、麻烦。当我们还在辛苦的搭建项目时，可能 Python程序员已经把功能写好了，究其原因主要是两点：


复杂的配置
项目各种配置其实是开发时的...]]></description><category></category></item><item><title><![CDATA[JUC多线程]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105177906</link><guid>https://blog.youkuaiyun.com/black210/article/details/105177906</guid><author>black210</author><pubDate>Sun, 29 Mar 2020 14:07:20 +0800</pubDate><description><![CDATA[1.概述
1.1.并发与并行

并发：指两个或多个事件在同一个时间段内发生。
并行：指两个或多个事件在同一时刻发生（同时发生）。


1.2.线程与进程

基本概述



进程：是指一个内存中运行的应用程序，每个进程都有一个独立的内存空间，一个应用程序可以同时运行多个进程；进程也是程序的一次执行过程，是系统运行程序的基本单位；系统运行一个程序即是一个进程从创建、运行到消亡的过程。


线程：线程是...]]></description><category></category></item><item><title><![CDATA[SpringMVC总结]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105164805</link><guid>https://blog.youkuaiyun.com/black210/article/details/105164805</guid><author>black210</author><pubDate>Sat, 28 Mar 2020 17:35:34 +0800</pubDate><description><![CDATA[文章目录SpringMVC总结前言1.Spring概述1.1.MVC模式1.2.与Struts2的优略分析2.工作原理分析2.1.流程说明（重要）：2.2.重要组件3.常用注解3.1.RequestMapping3.2.请求参数类3.2.1.请求参数3.2.2.请求参数乱码问题3.2.3.请求参数类注解RequestParamRequestBody（异步用）PathVaribaleHiddentH...]]></description><category></category></item><item><title><![CDATA[Spring总结]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105148936</link><guid>https://blog.youkuaiyun.com/black210/article/details/105148936</guid><author>black210</author><pubDate>Fri, 27 Mar 2020 20:03:18 +0800</pubDate><description><![CDATA[文章目录1.spring是什么2.spring 的优势3.spring 的体系结构4.Spring IOC4.1.Spring基于XML的IOC细节4.1.1.spring中工厂的类结构图4.1.2.BeanFactory 和ApplicationContext 的区别4.1.3.ApplicationContext 接口的实现类4.2.bean标签和管理对象细节4.2.1.bean标签4.2.2...]]></description><category></category></item><item><title><![CDATA[Mybatis]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105118191</link><guid>https://blog.youkuaiyun.com/black210/article/details/105118191</guid><author>black210</author><pubDate>Thu, 26 Mar 2020 14:34:37 +0800</pubDate><description><![CDATA[文章目录1.概述2.入门2.1.环境搭建2.2.全局配置文件2.3.测试类2.4.流程分析2.5. SqlSession2.6.作用域分析3. CRUD3.1.基于xml3.1.1.  CRUD3.1.2.参数细节3.1.3.类与表名不一致3.1.4.参考 Mapper 配置文件3.2. SqlMapConfig.xml 配置文件3.2.1.主要配置内容3.2.2. properties（属性）3...]]></description><category></category></item><item><title><![CDATA[JDBC]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105079715</link><guid>https://blog.youkuaiyun.com/black210/article/details/105079715</guid><author>black210</author><pubDate>Tue, 24 Mar 2020 19:57:16 +0800</pubDate><description><![CDATA[1.概述
概念：Java DataBase Connectivity  Java 数据库连接， Java语言操作数据库
JDBC本质：其实是官方（sun公司）定义的一套操作所有关系型数据库的规则，即接口。各个数据库厂商去实现这套接口，提供数据库驱动 jar 包。我们可以使用这套接口（JDBC）编程，真正执行的代码是驱动 jar 包中的实现类。
2.快速入门

步骤



导入驱动jar包 mysq...]]></description><category></category></item><item><title><![CDATA[Web服务器]]></title><link>https://blog.youkuaiyun.com/black210/article/details/105068865</link><guid>https://blog.youkuaiyun.com/black210/article/details/105068865</guid><author>black210</author><pubDate>Tue, 24 Mar 2020 12:24:04 +0800</pubDate><description><![CDATA[1. HTTP 协议
1.1 概述

概述


HTTP协议是 Hyper Text Transfer Protocol（超文本传输协议）的缩写,是用于从万维网（WWW:World Wide Web ）服务器传输超文本到本地浏览器的传送协议。
HTTP 是一个基于TCP/IP通信协议来传递数据（HTML 文件, 图片文件, 查询结果等）。
HTTP 是一个属于应用层的面向对象的协议，由于其简捷、快...]]></description><category></category></item></channel></rss>