<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[节至]]></title><description><![CDATA[节而有度，无所不至！]]></description><link>https://blog.youkuaiyun.com/wangxiaotongfan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wangxiaotongfan]]></copyright><item><title><![CDATA[排序算法（2）]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/102712465</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/102712465</guid><author>wangxiaotongfan</author><pubDate>Wed, 23 Oct 2019 22:26:55 +0800</pubDate><description><![CDATA[本文介绍插入排序和希尔排序，插入排序是较为常见的排序算法，希尔排序也是基础的排序算法，废话不多说，具体来看一下两种算法。
插入排序
插入排序的基本思想是拿到下一个插入元素，在已经有序的待排数组部分找到自己的位置，然后进行数据的移动，完成该元素的排序，依次类推，直到整个待排数组有序，初始状态待排数组的有序部分仅有一个元素。代码如下：
public static void sort(int[] num...]]></description><category></category></item><item><title><![CDATA[排序算法（1）]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/102693387</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/102693387</guid><author>wangxiaotongfan</author><pubDate>Wed, 23 Oct 2019 00:09:17 +0800</pubDate><description><![CDATA[本片文章是算法排序系列的第一章，也是我在平台上的第一篇文章，希望自己能够坚持下去，同时本部分算法学习中一定会给出Java或者scala的实现方式（心情好的话也可能是两种语言都有），好了废话不多说，我们切入正题，冒泡排序和选择排序是排序算法中最为基础的两种算法，个人感觉也是最为形象的算法，属于那种看了名字就基本知道大致思路，下面详细介绍。
冒泡排序
你真的理解了冒泡排序吗？冒泡排序的基本思想是依次比...]]></description><category></category></item><item><title><![CDATA[springboot整合mybatis以及mybatisplus]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/101034044</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/101034044</guid><author>wangxiaotongfan</author><pubDate>Thu, 19 Sep 2019 19:51:58 +0800</pubDate><description><![CDATA[这篇文档介绍整合的过程

]]></description><category></category></item><item><title><![CDATA[mybatis-plus]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/101033999</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/101033999</guid><author>wangxiaotongfan</author><pubDate>Thu, 19 Sep 2019 19:50:33 +0800</pubDate><description><![CDATA[这篇文档主要介绍mybatis plus

]]></description><category></category></item><item><title><![CDATA[重新审视技术]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/100990080</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/100990080</guid><author>wangxiaotongfan</author><pubDate>Wed, 18 Sep 2019 17:19:28 +0800</pubDate><description><![CDATA[这篇博客总结对技术的看法

]]></description><category></category></item><item><title><![CDATA[idea常用插件总结]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/100023316</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/100023316</guid><author>wangxiaotongfan</author><pubDate>Thu, 22 Aug 2019 20:25:00 +0800</pubDate><description><![CDATA[导语 : 对idea IDE自己常用的插件进行一个记录, 同时也给大家分享一下;
下面就是正文了, 其实也没有几行

csv plugin 方便查看;
Power Model II 让你的代码动起来,酷炫;
AIXCoder 让机器人帮你写代码;
lombok 让你的Java代码短到难以置信;
git 比git客户端还好用的git GUI;
maven 自动导入, 已经好几年没有见过手动lib目录...]]></description><category></category></item><item><title><![CDATA[史上postgres元数据表最详细信息！]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/93498164</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/93498164</guid><author>wangxiaotongfan</author><pubDate>Mon, 24 Jun 2019 16:59:24 +0800</pubDate><description><![CDATA[最近在做元数据相关的工作，下面是postgres最全的元数据列表，使用版本9.4+




name
description




pg_aggregate
存储聚合函数的信息


pg_am
存储访问方法关系信息，当前只有索引有访问方法


pg_amop
所在operator family的operator和访问方法的关联，备注一下这里的operator类似于search、ordering等...]]></description><category></category></item><item><title><![CDATA[Crontab使用注意]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/88552804</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/88552804</guid><author>wangxiaotongfan</author><pubDate>Thu, 14 Mar 2019 14:49:09 +0800</pubDate><description><![CDATA[在linux环境中，经常会使用crontab命令来进行定时操作，在配置crontab时，要注意以下问题：

脚本或者文件路径使用全路径配置
在执行脚本中引入系统环境变量或用户环境变量
查询crontab执行的日志在/var/log/cron中进行查看
重启crond服务，service crond restart/start/status


...]]></description><category></category></item><item><title><![CDATA[scala问题记录]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/84398898</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/84398898</guid><author>wangxiaotongfan</author><pubDate>Fri, 23 Nov 2018 16:37:12 +0800</pubDate><description><![CDATA[问题描述
value filter is not a member of *
这种问题一般是由于scala和java的相互转换没有成功造成的，可以引入scala的工具类进行隐式转化。
解决方案
添加代码“
import collection.JavaConversions._

完成！

...]]></description><category></category></item><item><title><![CDATA[scala排序——ordering vs ordered]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82856870</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82856870</guid><author>wangxiaotongfan</author><pubDate>Wed, 26 Sep 2018 17:46:45 +0800</pubDate><description><![CDATA[在最近探索scala的过程中，发现一个比较重要的问题，那就是排序，排序在业务代码中还是很常见的，最常用的排序就是对集合调用sorted[B &amp;gt;: A](implicit ord: Ordering[B])接口，但是用久了很想问为什么，这篇博客目的是解释清楚scala中的排序问题。
两大神器
scala中提供的排序比较接口，ordering和ordered。话不多说，先贴一点源码看看：
tra...]]></description><category></category></item><item><title><![CDATA[Disruptor以及@Contended注解]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82803385</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82803385</guid><author>wangxiaotongfan</author><pubDate>Fri, 21 Sep 2018 16:25:15 +0800</pubDate><description><![CDATA[Disruptor感想
很早之前阅读过Disruptor的使用，这里有篇美团团队的文章很详细的介绍了这种队列的相关原理以及为什么这么设计和这么设计为什么处理速度很快，https://tech.meituan.com/disruptor.html，不想再“拿来主义”，本篇文章只最为记录，同时针对文章中说的相关测试，这里我会将数据插入比较大的测试贴出来；其中对这篇文章中提到但是限于篇幅没有说明的jav...]]></description><category></category></item><item><title><![CDATA[scala中的测试组件——scalatest之FlatSpec]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82707541</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82707541</guid><author>wangxiaotongfan</author><pubDate>Fri, 14 Sep 2018 18:59:27 +0800</pubDate><description><![CDATA[org.scalatest



FlatSpec



classFlatSpec extends FlatSpecLike

Facilitates a “behavior-driven” style of development (BDD), in which tests are combined with text that specifies the behavior the tests...]]></description><category></category></item><item><title><![CDATA[spark中的聚合函数总结]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82693610</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82693610</guid><author>wangxiaotongfan</author><pubDate>Thu, 13 Sep 2018 19:40:25 +0800</pubDate><description><![CDATA[PairRDDFunctions中的函数：



def aggregateByKey[U](zeroValue: U)(seqOp: (U, V) ⇒ U, combOp: (U, U) ⇒ U)(implicit arg0: ClassTag[U]): RDD[(K, U)]

Aggregate the values of each key, using given combine func...]]></description><category></category></item><item><title><![CDATA[eclipse、idea重定义目录结构]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82660523</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82660523</guid><author>wangxiaotongfan</author><pubDate>Wed, 12 Sep 2018 14:02:59 +0800</pubDate><description><![CDATA[在两种idea进行写程序的时候，经常会遇到这种问题，就是新建的工程目录不能满足项目需求或者是不能更好的满足习惯，举一个简单的例子，在eclipse中新建一个普通的java工程，那么会遇到一个问题就是源码路径默认是在src下面的，而我们想要一个包含测试、外部文件resource的目录结构，类似于maven，那我们应该怎么办呢？本文章介绍在eclipse和idea中操作目录结构的方式。

1、idea...]]></description><category></category></item><item><title><![CDATA[jvm（四）——JVM自带内存分析工具详解]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82560739</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82560739</guid><author>wangxiaotongfan</author><pubDate>Sun, 09 Sep 2018 18:10:30 +0800</pubDate><description><![CDATA[在进行java程序问题定位时，内存问题定位是很关键的一招。jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题！虽然jvm调优成熟的工具已经有很多：jconsole、大名鼎鼎的VisualVM，IBM的Memory Analyzer等等，但是在生产环境出现问题的时候，工具的使用会有所限制。所有的工具几乎都是依赖于jdk的接口和底层的这些命令，研究和掌握这些命令的使用也让我们更...]]></description><category></category></item><item><title><![CDATA[jvm（三）——jvm垃圾回收算法以及实现]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82389881</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82389881</guid><author>wangxiaotongfan</author><pubDate>Tue, 04 Sep 2018 20:33:15 +0800</pubDate><description><![CDATA[一、概述

java中，垃圾收集 Garbage Collection 通常被称为“GC”，它诞生于1960年 MIT 的 Lisp 语言，经过半个多世纪，目前已经十分成熟了。

jvm 中，程序计数器、虚拟机栈、本地方法栈都是都是线程私有的，随线程而生随线程而灭，栈帧（栈中的对象）随着方法的进入和退出做入栈和出栈操作，实现了自动的内存清理，因此，我们的内存垃圾回收主要集中于 java 堆和方法区...]]></description><category></category></item><item><title><![CDATA[scala中的sealed]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82348923</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82348923</guid><author>wangxiaotongfan</author><pubDate>Mon, 03 Sep 2018 15:07:43 +0800</pubDate><description><![CDATA[sealed关键字在scala的集合和模式匹配上面应用较多，本篇文章说明sealed的使用场景以及为什么使用sealed。

A sealed class cannot have any new subclasses added except the ones in the same file.这是sealed关键字比较官方的解释，意思是只在同一个文件中的添加其子类，除此以外不能有任何的子类（区别...]]></description><category></category></item><item><title><![CDATA[jvm（二）——类的加载过程]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82261238</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82261238</guid><author>wangxiaotongfan</author><pubDate>Fri, 31 Aug 2018 19:49:21 +0800</pubDate><description><![CDATA[本文对类的整体加载步骤进行说明，包含了什么是类的加载，类加载的步骤，类的生命周期， 类加载实现，双亲委派模式以及自定义类加载器，通过本篇文章可以较为细致的了解类加载的全过程，以及这样加载的原因。

1、什么是类的加载

类的加载指的是将类的.class文件中的二进制数据读入到内存中，将其放在运行时数据区的方法区内，然后在堆区创建一个java.lang.Class对象，用来封装类在方法区内的数据结构...]]></description><category></category></item><item><title><![CDATA[jvm（一）——内存区域划分]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82261059</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82261059</guid><author>wangxiaotongfan</author><pubDate>Fri, 31 Aug 2018 19:29:16 +0800</pubDate><description><![CDATA[前言：jvm内存划分为多个区域，每个不同的区域分别有着不同的功能和不同的用途，本篇博客旨在说清楚区域的划分、名称、属性以及作用，本篇博客是参考了多篇博客的结果，参考博客会在文章结尾进行说明。



上图中说明了堆中对象的分配来源，对象实例化在堆中，但是其引用可能在方法区（常量实例），或者虚拟机的栈帧中（java方法中的实例化）和本地方法栈中（本地方法对象的实例化），在下面有详细说明。



一.程...]]></description><category></category></item><item><title><![CDATA[scala实现球面插值（Slerp）]]></title><link>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82226446</link><guid>https://blog.youkuaiyun.com/wangxiaotongfan/article/details/82226446</guid><author>wangxiaotongfan</author><pubDate>Thu, 30 Aug 2018 19:09:25 +0800</pubDate><description><![CDATA[一、球面插值

球面插值的原理大概就如下图所示，大致理解就是计算球面角度的占比，计算公式不是太复杂，如下所示： 


 
当角度无限接近于0的时候，这个时候球面插值就演变为线性插值 
 
下面用scala对球面插值进行一个简单的实现：

class Slerp4scala[T &amp;amp;lt;: Double](start: Vector[T], end: Vector[T], t: Double, om...]]></description><category></category></item></channel></rss>