<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[M_azed的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/M_azed</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; M_azed]]></copyright><item><title><![CDATA[mysql 强制使用索引 FORCE INDEX(idx_name)]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/115669477</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/115669477</guid><author>M_azed</author><pubDate>Tue, 13 Apr 2021 16:14:34 +0800</pubDate><description><![CDATA[mysql 在查询时 如果查询语句中犹豫某些原因未使用到索引，导致查询很慢，可以强制使用索引。

如


EXPLAIN
SELECT cr.id
FROM car_record cr 
LEFT JOIN camera c ON cr.camera_id=c.id 
LEFT JOIN pile p ON p.pile_id=c.pile_id 
LEFT JOIN station s ON c.station_id=s.station_id 
LEFT JOIN county co ON s.count]]></description><category></category></item><item><title><![CDATA[非对称加密 RSA java的基本使用]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/115182807</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/115182807</guid><author>M_azed</author><pubDate>Wed, 31 Mar 2021 18:05:56 +0800</pubDate><description><![CDATA[1.RSA是什么

RSA算法是最著名和可靠的非对称密钥加密算法。

RSA中几个主要概念：

①密钥对

在非对称加密技术中，有两种密钥，分为私钥和公钥，私钥是密钥对所有者持有，不可公布，公钥是密钥对持有者公布给他人的。

公钥：公钥用来给数据加密，用公钥加密的数据只能使用私钥解密。

私钥：用来解密公钥加密的数据。

一般，公钥是要公布给他人（一人或多人）使用的，私钥由密钥对所有者持有，公钥加密的数据，私钥来解密，私钥加密的数据，公钥来解密，不能独自进行加密解密。







②签名

使用私钥对需要]]></description><category></category></item><item><title><![CDATA[docker 搭建私有网盘owncloud]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/115129699</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/115129699</guid><author>M_azed</author><pubDate>Tue, 23 Mar 2021 17:00:33 +0800</pubDate><description><![CDATA[最近看到一个私有网盘owncloud搭建起来非常简单，就试了一下，尤其是使用docker搭建，简单快捷，搭建完成之后，用了一下，很简洁，打算后续把自己家里的电脑插个硬盘，装个docker，搭建owncloud，存点电影啥的，用路由器做个映射，用起来就很方便了。

下面来说一下操作过程

1.安装docker

略过（网上到处都是）

2.拉取owncloud镜像


docker pullowncloud

默认会拉取 latest版本



3.安装mysql

（可不安装，owncloud建议使用my.]]></description><category></category></item><item><title><![CDATA[mysql 自定义函数 递归查找父节点]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/114641547</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/114641547</guid><author>M_azed</author><pubDate>Wed, 10 Mar 2021 18:04:05 +0800</pubDate><description><![CDATA[1.问题描述：

现有一树形机构数据表，只有子父关系，需找到每行数据 从本节点到跟节点的路径

如：

99AA 的 path 应该为 /99AA /

A000的 path 应该为/99AA/A000/

0100的 path 应该为/99AA/A000/0100/

2.解决方案：

写一个递归查询父节点的函数

①创建函数向导





②函数内容



编写完成点保存，然后就可以用了


CREATE DEFINER=`root`@`%` FUNCTION `getParentNodeList`..]]></description><category></category></item><item><title><![CDATA[mysql group_concat 将一对多结果拼接成一行]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/114641116</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/114641116</guid><author>M_azed</author><pubDate>Wed, 10 Mar 2021 17:35:06 +0800</pubDate><description><![CDATA[1.问题描述：现有一对多的数据，想将多行数据拼成一行

例如：

期望：

2.解决方法：

使用mysql 的group_concat


group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])


原查询：


select * from national_industry_keyword



目标查询：


select t.id,t.code,t.name,GROUP_CONCAT(t.keyword).]]></description><category></category></item><item><title><![CDATA[docker如何启动容器并执行容器内脚本]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/114265151</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/114265151</guid><author>M_azed</author><pubDate>Mon, 01 Mar 2021 16:19:01 +0800</pubDate><description><![CDATA[1.问题描述：

启动docker容器后，执行容器内脚本

2.案例需求：

现在需要用docker起一个centos7的环境，安装一个pyhton，跑一个定时任务，当时执行脚本。

3.解决：

开始尝试 使用systemctl 启动crond 执行pyhton项目脚本，结果docker容器中没有systemctl

第二次尝试 写一个启动crond 的脚本，放到/etc/init.d目录下，docker容器启动后会执行该目录下脚本，但没有生效

第三次

写一个启动crond 的脚本，使用 dock..]]></description><category></category></item><item><title><![CDATA[docker创建centos容器使用crond]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/114090162</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/114090162</guid><author>M_azed</author><pubDate>Thu, 25 Feb 2021 17:00:14 +0800</pubDate><description><![CDATA[记一次docker创建centos容器跑python任务案例

1.需求描述：

用docker起一个centos容器，在容器中安装python3，并定时执行脚本，将日志输出到某文件。将容器打成镜像导出，客户需将镜像导入。

2.任务分解：

①docker中使用crond

②python执行脚本并输出日志

③将容器打成镜像

3.具体操作：

①启动一个带有python的centos镜像为基础容器





②将脚本拷入容器


docker cp test.tar musing_shirley:/.]]></description><category></category></item><item><title><![CDATA[连接池连接失效问题，mysql主动断开超时连接]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/114088811</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/114088811</guid><author>M_azed</author><pubDate>Thu, 25 Feb 2021 16:24:34 +0800</pubDate><description><![CDATA[1.问题描述：

springboot连接mysql时，一段时间不适用，第一次使用会报如下错误：


WARN 115584573 scheduling-1 com.zaxxer.hikari.pool.PoolBase:isConnectionAlive:176 HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@53794f79 (No operations allowed after connect]]></description><category></category></item><item><title><![CDATA[drools规则引擎]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/106098854</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/106098854</guid><author>M_azed</author><pubDate>Thu, 14 May 2020 18:34:46 +0800</pubDate><description><![CDATA[drools规则引擎
规则引擎是什么
规则引擎由推理引擎发展而来，是一种嵌入在应用程序中的组件，实现了将业务决策从应用程序代码中分离出来，并使用预定义的语义模块编写业务决策。接受数据输入，解释业务规则，并根据业务规则做出业务决策。
Drools是一款基于java语言的开源规则引擎，基于RETE算法实现。
引入规则引擎后带来的好处：
一.实现业务逻辑与业务规则的分离，实现业务规则的集中管理;
二.可以动态修改业务规则，从而快速响应需求变更;
三.使业务分析人员也可以参与编辑、维护系统的业务规则;
四.使用规则]]></description><category></category></item><item><title><![CDATA[六、Spring MVC 原理]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/95616828</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/95616828</guid><author>M_azed</author><pubDate>Thu, 08 Aug 2019 12:28:57 +0800</pubDate><description><![CDATA[Spring的模型-视图-控制器（MVC）框架是围绕一个DispatcherServlet 来设计的，这个Servlet 会把请求分发给各个处理器，并支持可配置的处理器映射、视图渲染、本地化、时区与主题渲染 等，甚至还能支持文件上传。

一、MVC执行流程




	一个请求匹配前端控制器DispatcherServlet的请求映射路径(在web.xml中指定), WEB 容器将该请求转交...]]></description><category></category></item><item><title><![CDATA[一、java基础--复制clone]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/94740852</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/94740852</guid><author>M_azed</author><pubDate>Tue, 06 Aug 2019 14:55:18 +0800</pubDate><description><![CDATA[将一个对象的引用复制给另外一个对象，一共有三种方式。第一种方式是直接赋值，第二种方式 是浅拷贝，第三种是深拷贝。所以大家知道了哈，这三种概念实际上都是为了拷贝对象。

1. 直接赋值复制

直接赋值。在Java中，A a1 = a2，我们需要理解的是这实际上复制的是引用，也就是 说a1和a2指向的是同一个对象。

因此，当a1变化的时候，a2 里面的成员变量也会跟 着变化。

2.浅复制（复...]]></description><category></category></item><item><title><![CDATA[二、多线程(7)AQS抽象队列同步器]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/95616625</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/95616625</guid><author>M_azed</author><pubDate>Mon, 05 Aug 2019 15:22:16 +0800</pubDate><description><![CDATA[AQS（java.util.concurrent.locks.AbstractQueuedSynchronizer）是用来构建锁或者其他同步组件（信号量、事件等）的基础框架类。JDK中许多并发工具类的内部实现都依赖于AQS，如ReentrantLock, Semaphore, CountDownLatch等等。学习AQS的使用与源码实现对深入理解concurrent包中的类有很大的帮助。

一、作...]]></description><category></category></item><item><title><![CDATA[一、java基础--泛型]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/94740799</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/94740799</guid><author>M_azed</author><pubDate>Fri, 02 Aug 2019 18:41:41 +0800</pubDate><description><![CDATA[泛型提供了编译时类型安全检测机制，该机制允许程序员在编译时检测到非法的类型。

泛型的本质是参数化类型，也就是说所操作的数据类型被指定为一个参数。比如我们要写一个排序方法， 能够对整型数组、字符串数组甚至其他任何类型的数组进行排序，我们就可以使用Java 泛型。

泛型有三种使用方式，分别为：泛型类、泛型接口、泛型方法

一、泛型方法

你可以写一个泛型方法，该方法在调用时可以接收不同类型的参数...]]></description><category></category></item><item><title><![CDATA[一、java基础--内部类]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/94740775</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/94740775</guid><author>M_azed</author><pubDate>Fri, 02 Aug 2019 17:53:49 +0800</pubDate><description><![CDATA[Java 类中不仅可以定义变量和方法，还可以定义类，这样定义在类内部的类就被称为内部类。根 据定义的方式不同，内部类分为静态内部类，成员内部类，局部内部类，匿名内部类四种

一、静态内部类

1. 静态内部类可以访问外部类所有的静态变量和方法，即使是private的也一样。

2. 静态内部类和一般类一致，可以定义静态变量、方法，构造方法等。

3. 其它类使用静态内部类需要使用“外部类.静态内部...]]></description><category></category></item><item><title><![CDATA[一、java基础--注解]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/94740745</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/94740745</guid><author>M_azed</author><pubDate>Fri, 02 Aug 2019 17:18:58 +0800</pubDate><description><![CDATA[目录

一、概念

1.注解

①注解：

②基本原则：

③注解分类：

2.元数据

二、系统注解

1.标准注解

① @Override

② @Deprecated

③ @SuppressWarnings

2.元注解

① @Retention

② @Target

③ @Documented

④ @Inhertied

三、注解元素数据类型

四、提取注解

1.已知实现类

...]]></description><category></category></item><item><title><![CDATA[一、java基础--反射]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/94740718</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/94740718</guid><author>M_azed</author><pubDate>Thu, 01 Aug 2019 15:13:44 +0800</pubDate><description><![CDATA[在 Java 中的反射机制是指在运行状态中，对于任意一个类都能够知道这个类所有的属性和方法； 并且对于任意一个对象，都能够调用它的任意一个方法；这种动态获取信息以及动态调用对象方 法的功能称为Java语言的反射机制。



一、Java反射API

反射 API用来生成 JVM中的类、接口或者对象的信息

1. Class类：反射的核心类，可以获取类的属性，方法等信息。 

2. Field...]]></description><category></category></item><item><title><![CDATA[版本管理工具--Git 常用命令]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/97396017</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/97396017</guid><author>M_azed</author><pubDate>Fri, 26 Jul 2019 17:28:56 +0800</pubDate><description><![CDATA[一、新入职公司的工作准备

1.初始化用户信息

2.初始化本地库

3.初始化秘钥

4.克隆公司项目

二、工作常用命令

1.文件提交

①添加暂存

②提交本地

③从远程更新

④提交远程

⑤显示有变更的文件

⑥查看该文件每次提交记录

2.查看初始化信息

3.分支操作

①查看分支

②切换指定分支

③创建分支并提交到远程

④合并分支

4.解决冲突

①放弃本地修改

②...]]></description><category></category></item><item><title><![CDATA[一、java基础--异常Exception]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/94740692</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/94740692</guid><author>M_azed</author><pubDate>Fri, 26 Jul 2019 16:07:46 +0800</pubDate><description><![CDATA[如果某个方法不能按照正常的途径完成任务，就可以通过另一种路径退出方法。在这种情况下 会抛出一个封装了错误信息的对象。此时，这个方法会立刻退出同时不返回任何值。另外，调用 这个方法的其他代码也无法继续执行，异常处理机制会将代码执行交给异常处理器。



Throwable是 Java 语言中所有错误或异常的超类。下一层分为Error和Exception

一、Error

Error类是指ja...]]></description><category></category></item><item><title><![CDATA[快捷开发-Lombok]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/97275779</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/97275779</guid><author>M_azed</author><pubDate>Thu, 25 Jul 2019 17:25:31 +0800</pubDate><description><![CDATA[1.简介及目录https://blog.youkuaiyun.com/weixin_41540822/article/details/86606370

2.@Cleanup &amp; @NonNullhttps://blog.youkuaiyun.com/weixin_41540822/article/details/86606664

3.@Loghttps://blog.youkuaiyun.com/weixin...]]></description><category></category></item><item><title><![CDATA[常用算数类--Bigdecimal详解]]></title><link>https://blog.youkuaiyun.com/M_azed/article/details/97272951</link><guid>https://blog.youkuaiyun.com/M_azed/article/details/97272951</guid><author>M_azed</author><pubDate>Thu, 25 Jul 2019 17:06:05 +0800</pubDate><description><![CDATA[在金融中，处理金额，基本类型往往不能满足对金额的操作，而Bigdecimal不仅包含了加减乘除等运算操作、比较操作，还有丰富的进位操作。

现在，我们就从0开始，逐渐深入，了解它的一些常用方法


//构造
BigDecimal(int)       创建一个具有参数所指定整数值的对象。
BigDecimal(double) 创建一个具有参数所指定双精度值的对象。
BigDecimal(long)...]]></description><category></category></item></channel></rss>