<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[一个小彩笔]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/lthirdonel</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lthirdonel]]></copyright><item><title><![CDATA[领域驱动设计系列：知识体系]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/121499717</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/121499717</guid><author>lthirdonel</author><pubDate>Tue, 23 Nov 2021 18:46:19 +0800</pubDate><description><![CDATA[1. 基础理论
2004  Eric Evans 《Domain-Driven Design –Tackling Complexity in the Heart of Software》 Domain-Driven Design –Tackling Complexity in the Heart of Software
推荐理由： 2004  Eric Evans通过此书首次提出领域驱动设计的基础理论。
视频：
DDD Europe 2020 Eric Evans 演讲 Bounded Contexts
D]]></description><category></category></item><item><title><![CDATA[What is Domain-Driven Design笔记：C1.Analyzing Business Domains]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117378599</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117378599</guid><author>lthirdonel</author><pubDate>Sat, 29 May 2021 09:46:19 +0800</pubDate><description><![CDATA[In this chapter, you will learn about domain-driven design’s concepts for analyzing a company’s business: the business domain; core, supporting, and generic subdomains; and domain experts.
在这一节，你将学习通过DDD从公司商业角度进行分析的概念: 商业域、核心域、支撑域、通用域 以及领域专家
What Is a Busi]]></description><category></category></item><item><title><![CDATA[LeetCode477 : 汉明距离总和]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117378485</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117378485</guid><author>lthirdonel</author><pubDate>Sat, 29 May 2021 09:22:27 +0800</pubDate><description><![CDATA[考察点： 位运算（异或操作对比位数差异、bitCount函数统计1个个数、位运算时的数学思维）


public class LeetCode477totalHammingDistance {

    public static int totalHammingDistance(int[] nums) {
        int sum = 0;
        for (int i = 0; i &lt; nums.length; i++) {
            for (int j=i+ 1;j]]></description><category></category></item><item><title><![CDATA[剑指offer09 : 用两个栈实现队列]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117371373</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117371373</guid><author>lthirdonel</author><pubDate>Fri, 28 May 2021 18:42:03 +0800</pubDate><description><![CDATA[https://leetcode-cn.com/problems/yong-liang-ge-zhan-shi-xian-dui-lie-lcof/submissions/
考察点： 栈的使用、队列的概念理解、一种数据结构的实现
package BasicDataStruct;

import java.util.Stack;

public class CQueue {
    private Stack in = new Stack&lt;Integer&gt;();
    private Stack]]></description><category></category></item><item><title><![CDATA[LeetCode94 : 二叉树的中序遍历]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117335282</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117335282</guid><author>lthirdonel</author><pubDate>Thu, 27 May 2021 18:48:59 +0800</pubDate><description><![CDATA[https://leetcode-cn.com/problems/binary-tree-inorder-traversal/
考察点： 二叉树的中序遍历， 递归思考,  递归中全局list传入
import BasicDataStruct.TreeNode;

import java.util.ArrayList;
import java.util.List;

public class LeetCode94inorderTraversal {

    public static List&lt;Int]]></description><category></category></item><item><title><![CDATA[Leetcode 107 : 二叉树的层次遍历2]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117334586</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117334586</guid><author>lthirdonel</author><pubDate>Thu, 27 May 2021 18:18:23 +0800</pubDate><description><![CDATA[https://leetcode-cn.com/problems/binary-tree-inorder-traversal/
考察点： 二叉树的层次遍历， 集合类的灵活应用 Collections 以及 list.add(0,)方法的灵活使用
    import BasicDataStruct.TreeNode; 

    import java.util.*;

    public class LeetCode107FLoorTraversal {

        public static L]]></description><category></category></item><item><title><![CDATA[Leetcode 102 : 二叉树的层序遍历]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117334083</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117334083</guid><author>lthirdonel</author><pubDate>Thu, 27 May 2021 17:47:11 +0800</pubDate><description><![CDATA[https://leetcode-cn.com/problems/binary-tree-level-order-traversal/submissions/
考察点： 二叉树层次遍历、层次遍历中处理每层数据
import BasicDataStruct.TreeNode;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;

public class]]></description><category></category></item><item><title><![CDATA[Leetcode 993 : 二叉树的堂兄弟节点]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/117332535</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/117332535</guid><author>lthirdonel</author><pubDate>Thu, 27 May 2021 16:47:57 +0800</pubDate><description><![CDATA[https://leetcode-cn.com/problems/cousins-in-binary-tree/
考察点： 二叉树遍历、二叉树节点深度记录、二叉树当前节点父节点记录
import java.util.LinkedList;
import java.util.Queue;

public class BinaryTreeIsBrother {


    public static class TreeNode {
        int val;
        TreeNode left;]]></description><category></category></item><item><title><![CDATA[开发经验：List按某种优先级排序]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/116737908</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/116737908</guid><author>lthirdonel</author><pubDate>Thu, 13 May 2021 10:21:41 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/qq_38929156/article/details/85275138
一、问题说明
在做一个油田系统时遇到的需要根据优先级排序的问题
现有一个预算单的集合list,要根据历史单据做新的预算单据，但在做之前要查到之前的单据进行修改另存为新的单据，查询的过程是根据预算单的几个参数进行优先级排序查询，以便查询到最符合现在要求的历史单据作为修改模板。
预算单据实体:如下
二、解决思路
1、引入优先级分数的概念：
预算实体中添加score字段：
根据优先级进行分数配置：]]></description><category></category></item><item><title><![CDATA[MySQL Internals Manual Chapter 10 : 10.3 Bulk Insert]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/113873195</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/113873195</guid><author>lthirdonel</author><pubDate>Sat, 20 Feb 2021 09:31:00 +0800</pubDate><description><![CDATA[批量插入优化背后的逻辑很简单。
我们将Key存储在内存中的平衡二进制（红黑）树中，而不是将每个键值写入B树（即，键缓存，尽管批量插入代码不知道键缓存）。当此树达到其内存限制时，我们将所有密钥写入磁盘（即密钥缓存）。但是，由于已经对来自二叉树的key进行了排序，因此插入速度要快得多，所有必需的页面已经在缓存中，磁盘访问已最小化。

...]]></description><category></category></item><item><title><![CDATA[MySQL Internals Manual Chapter 10 : 10.2 How MySQL Does Sorting (filesort)]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/112798280</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/112798280</guid><author>lthirdonel</author><pubDate>Tue, 19 Jan 2021 02:04:58 +0800</pubDate><description><![CDATA[https://dev.mysql.com/doc/refman/8.0/en/order-by-optimization.html
8.2.1.16 ORDER BY Optimization
This section describes when MySQL can use an index to satisfy an ORDER BY clause, the filesort operation used when an index cannot be used, and execution plan]]></description><category></category></item><item><title><![CDATA[MySQL Internals Manual Chapter 10 :  10.1 The Item Class]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/112760881</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/112760881</guid><author>lthirdonel</author><pubDate>Mon, 18 Jan 2021 01:23:33 +0800</pubDate><description><![CDATA[To us, the word Item means more than just “thingamabob”; it is a technical term with a precise definition in the context of our source code. Item is a class. Each instance of the Item class has:
an analogue in the SQL language
a value
a data type descripto]]></description><category></category></item><item><title><![CDATA[MySQL Internals Manual : Chapter 10 Important Algorithms and Structures Table of Contents]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/112760684</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/112760684</guid><author>lthirdonel</author><pubDate>Mon, 18 Jan 2021 00:54:12 +0800</pubDate><description><![CDATA[这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
欢迎使用Markdown编辑器
你好！ 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar]]></description><category></category></item><item><title><![CDATA[数据库相关：历史使用SQL整理]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/109079115</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/109079115</guid><author>lthirdonel</author><pubDate>Wed, 14 Oct 2020 18:33:05 +0800</pubDate><description><![CDATA[2020.10.14  将gurantee 字段更新到access_company
查询两表数据情况
SELECT ac.legal_name,gu.guar_name,
ac.legal_cert_no,gu.guar_id_no,
ac.legal_cert_type,gu.guar_id_type
from gurantee as gu
LEFT JOIN  access_company as ac
ON ac.access_no=gu.access_no

由于连表查询将gurantee 所有109]]></description><category></category></item><item><title><![CDATA[SpringBoot秒杀系统：8.全局User对象注入]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/106949829</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/106949829</guid><author>lthirdonel</author><pubDate>Sun, 11 Oct 2020 11:40:07 +0800</pubDate><description><![CDATA[首先，前面利用token获取用户登录信息，并传输到页面。
如果每个接口都进行一次这样的操作将非常多余，
那么如何让每个接口自动的获取这个user对象呢？
通过ArgumentReslover参数解析器识别该对象，利用WebMvcConfigurerAdapter接口中addArgumentResolvers方法自动注入
参考:ArgumentReslover

定义Controller
下面是前面在接口中通过cookie中的token找到的user对象

    @RequestMapping("/to_l]]></description><category></category></item><item><title><![CDATA[SpringBoot秒杀系统：7.分布式Session设计]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/106869696</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/106869696</guid><author>lthirdonel</author><pubDate>Sun, 11 Oct 2020 11:39:57 +0800</pubDate><description><![CDATA[当存在多台服务器时，因为接口不一定映射到哪台服务器，所以利用本机原生Session是不可行的。本节将通过以下三步实现分布式Session
1.为用户生成token作为该用户唯一标识
2.将token与用户信息存入Redis中
3.将此token存入用户cookie中，用户每次访问时携带进入

生成token
利用UUIDUUID.randomUUID().toString().replace("-", "")随机生成token

package com.liuyang.seckill.util;
impor]]></description><category></category></item><item><title><![CDATA[SpringBoot秒杀系统：6.全局异常处理]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/106837459</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/106837459</guid><author>lthirdonel</author><pubDate>Sun, 11 Oct 2020 11:39:45 +0800</pubDate><description><![CDATA[异常定义
@ControllerAdvice
@ResponseBody


]]></description><category></category></item><item><title><![CDATA[SpringBoot秒杀系统：5.利用validation进行参数校验]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/106808113</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/106808113</guid><author>lthirdonel</author><pubDate>Sun, 11 Oct 2020 11:39:37 +0800</pubDate><description><![CDATA[引入validation依赖

	&lt;dependency&gt;
      &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
      &lt;artifactId&gt;spring-boot-starter-validation&lt;/artifactId&gt;
    &lt;/dependency&gt;


在实体类中加入限制注解

    @NotNull
    private String mobile;

   .]]></description><category></category></item><item><title><![CDATA[SpringBoot秒杀系统：4.登陆功能设计]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/106804155</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/106804155</guid><author>lthirdonel</author><pubDate>Sun, 11 Oct 2020 11:39:27 +0800</pubDate><description><![CDATA[用户表

DROP TABLE IF EXISTS `seckill_user`;
CREATE TABLE `seckill_user` (
  `id` bigint(20) unsigned NOT NULL COMMENT '用户ID',
  `nickname` varchar(255) NOT NULL,
  `password` varchar(32) DEFAULT NULL COMMENT 'MD5(MD5(pass明文+salt)+salt)',
  `salt` varchar(10.]]></description><category></category></item><item><title><![CDATA[SpringBoot秒杀系统：3.Redis配置]]></title><link>https://blog.youkuaiyun.com/lthirdonel/article/details/106759437</link><guid>https://blog.youkuaiyun.com/lthirdonel/article/details/106759437</guid><author>lthirdonel</author><pubDate>Sun, 11 Oct 2020 11:39:13 +0800</pubDate><description><![CDATA[1.引入jedis和fastjson两个包
 	&lt;dependency&gt;
      &lt;groupId&gt;redis.clients&lt;/groupId&gt;
      &lt;artifactId&gt;jedis&lt;/artifactId&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
      &lt;groupId&gt;com.alibaba&lt;/groupId&gt;
      &lt;artifa]]></description><category></category></item></channel></rss>