<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[JavaWeb_Hao的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/JavaWeb_Hao</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; JavaWeb_Hao]]></copyright><item><title><![CDATA[springboot解决外部配置文件问题]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106998679</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106998679</guid><author>JavaWeb_Hao</author><pubDate>Sun, 28 Jun 2020 14:56:59 +0800</pubDate><description><![CDATA[SpringBoot启动会扫描以下位置的application.yml或者application.properties文件作为SpringBoot的默认配置文件。

   -file: ./config/

   -file: ./

   -classpath: /config/

   -classpath: /

   即：jar所属文件夹同级别的config目录，然后是和jar同级，然后是classpath路径下的config目录下，最后是classpath...]]></description><category></category></item><item><title><![CDATA[maven的依赖传递]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106633880</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106633880</guid><author>JavaWeb_Hao</author><pubDate>Tue, 09 Jun 2020 09:39:20 +0800</pubDate><description><![CDATA[依赖传递：A依赖B，B依赖C，那么A依赖C

  上面描述没有问题的。但是有时候C中设定的依赖版本，但是在A中并查看依赖的版本，并非是C中设定的依赖版本，一直以来都感觉这是maven的bug，但实际上是我之前错了，在传递依赖的时候版本也有一定的规则。

 依赖传递的规则，以mysql的5.1.45以及8.0.11为例：

  1、在本模块B的pom声明了版本，则mysql版本即为此处指定的版本。

  2、为同一个pom中声明了两次mysql这两个版本，谁在下面谁生效

  3、父...]]></description><category></category></item><item><title><![CDATA[Jenkins内网搭建并自动化部署vue项目]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106570821</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106570821</guid><author>JavaWeb_Hao</author><pubDate>Fri, 05 Jun 2020 15:13:58 +0800</pubDate><description><![CDATA[序言

  前面已经讲述了jenkins的一些基本的操作，是以部署maven项目讲述的，此处讲解一下vue部署的过程，因为是在上一篇文章基础上，所以此处就讲一下不同的地方，以及需要注意的地方。



下载nodejs

  机器下载nodejs，jenkins下载nodejs插件，并配置好nodejs路径在系统管理-&gt; 全局工具配置。



创建新任务

   和构建基本上步骤是差不多的，但是有一些细微的区别：

  1、git代码地址，帐号、密码、分支

2、触发器...]]></description><category></category></item><item><title><![CDATA[Jenkins内网搭建并自动化部署maven项目]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106568955</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106568955</guid><author>JavaWeb_Hao</author><pubDate>Fri, 05 Jun 2020 14:56:59 +0800</pubDate><description><![CDATA[序言

  先声明一下，因为当时部署的时候是在公司内网环境下，所以无法截取图片，这个地方就尽量使用文字描述的详细一些，如果有需要图片讲解的话，可以给我评论，我在本地机器上重新搭建以下就行了。

安装jenkins

  jenkins官网提供了多种版本的下载和使用，我是采用的jenkins的war+tomcat部署的，比较简单，此处只提供jenkins官网地址以及Tomcat地址。有需要自行下载。

  运行tomcat的时候，war包解压，别忘了记得将war给删除掉，因为每次重启tomca...]]></description><category></category></item><item><title><![CDATA[mysql之锁机制]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106544235</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106544235</guid><author>JavaWeb_Hao</author><pubDate>Thu, 04 Jun 2020 16:11:29 +0800</pubDate><description><![CDATA[序言

  本文主要讲解mysql的锁种类各有什么作用，为什么需要锁，锁和什么有关，死锁等等。再来一个昨天项目中遇到的一个死锁的情况以及解决方法。一直没有想好，怎么写这篇文章，直到昨天遇到了死锁的问题并且已经解决了，才决定整理好思路，分享给大家，避免大家掉进坑里面。

为什么会有锁？

  记得很清楚初学java的时候，只是感觉会一些ddl以及dml语句就行了，直到找工作面试的时候发现，面试官喜欢问一些mysql锁、mysql索引算法以及隔离级别事务等。所以也针对性的学过mysql，也写过一些对...]]></description><category></category></item><item><title><![CDATA[DAG之HashGraph]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106523206</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106523206</guid><author>JavaWeb_Hao</author><pubDate>Wed, 03 Jun 2020 15:37:20 +0800</pubDate><description><![CDATA[网上看到了不错的文章，推荐给大家：

   英文文档地址:http://www.swirlds.com/downloads/SWIRLDS-TR-2016-02.pdf

   中文文档解析:https://blog.youkuaiyun.com/lcloveyou/article/details/80289258

   推荐文章：https://blog.youkuaiyun.com/qq_25870633/article/details/82057232

  
...]]></description><category></category></item><item><title><![CDATA[DAG三架马车之一NANO]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106495475</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106495475</guid><author>JavaWeb_Hao</author><pubDate>Tue, 02 Jun 2020 14:37:29 +0800</pubDate><description><![CDATA[简述

  NANO(RaiBlocks XRB)，是一种基于区块点阵(Block Lattice)结构的新型加密货币。Nano创新性地采用了一个用户一条链的方式，只记录自己的交易，也只有自己可以修改记录，不与其它帐户共享数据，从而使所有的交易都可以并行执行，能提供秒级的交易速度和无限可扩展性，并且允许他们异步地更新到网络的其余部分，从而以极小的资源开销获得快速的交易确认。

  交易数据的收发是可以异步进行的，所以就算同时有多笔金额汇入一个账户也没有问题，最终的金额是收到的金额的加法。如果接收...]]></description><category></category></item><item><title><![CDATA[DAG三架马车之一Byteball]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106494764</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106494764</guid><author>JavaWeb_Hao</author><pubDate>Tue, 02 Jun 2020 14:14:37 +0800</pubDate><description><![CDATA[简述

   Byteball 字节雪球，其Token为Bytes，虚拟货币代码为Gbyte。它的目标领域是数字货币、智能合约、匿名和快速的转账。如果把IOTA比喻为面向工业级应用的定位，nameByteball则可以被形容为面向大众的。

   Byteball在DAGCoin的基础上，引入了主链与见证人概念，值得一提的是HashGraph也引用了见证人概念，鼓励验证多个父辈交易单元，形成一个随着交易增长、相互验证，安全性不断加强的数字签名Hash网络。[主链]即：创造一个全网共识确定的...]]></description><category></category></item><item><title><![CDATA[DAG三架马车之一IOTA]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106494275</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106494275</guid><author>JavaWeb_Hao</author><pubDate>Tue, 02 Jun 2020 13:47:51 +0800</pubDate><description><![CDATA[简介

IOTA是第一个全球性的代表性DAG项目，IOTA专注于解决机器与机器(M2M)之间的交易问题,通过实现机器与机器间无交易费用的支付来构建未来机器经济(machine economy)的蓝图。可以说IOTA是为了物联网而设计的一个革命性的新型交易结算和数据转移层，其也是目前为止物联网骨干网最有希望的解决方案。

 它是基于新型的分布式账本Tangle(缠结)。Tangle能够克服现有区块链设计中的低效性(主要是TPS)，并未分布式P2P系统共识的达成创造了一种新的方法。通过IOTA进行转账不...]]></description><category></category></item><item><title><![CDATA[双花问题]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106389182</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106389182</guid><author>JavaWeb_Hao</author><pubDate>Wed, 27 May 2020 21:14:07 +0800</pubDate><description><![CDATA[所谓的双花问题其实就是指的重复消费的问题，double spending双重花费。简单来说就是一笔钱花了两次。

 现金交易是不会发生之类的事情，在虚拟货币中可能会存在这样的问题，但是像数字货币，以支付宝为例，应该是不会出现一笔钱转给两个人的，为什么？首先是因为速度快，另外幂等性，所谓幂等就是发生在更新操作的情况下的（多是添加，少数更新操作），如果是转钱的话明显是更新操作，恰恰其又是需要保证幂等的。

  update user setname = 'lisi' where id = 1;...]]></description><category></category></item><item><title><![CDATA[区块链之共识算法]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106380079</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106380079</guid><author>JavaWeb_Hao</author><pubDate>Wed, 27 May 2020 14:53:11 +0800</pubDate><description><![CDATA[在分布式系统中，为了使得整个系统正常工作，一个非常核心的问题就是如何保证集群中所有节点中的数据完全相同并且能够对发起的提案达成一致。共识算法就是用来解决上述问题的的，从而保证分布式系统一致性的方法。



共识的特性：

终止性(Termination)：所有正常运作的进程（节点）最终会在有限步数中结束并作出决定，不会无尽的执行下去。

一致性：

  （意见一致Agreement）所有的节点必须做出相同的决定;如果所有的节点都提议相同的初始决定值；

  （行为一致Integri...]]></description><category></category></item><item><title><![CDATA[区块链技术杂谈]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106376385</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106376385</guid><author>JavaWeb_Hao</author><pubDate>Wed, 27 May 2020 11:03:49 +0800</pubDate><description><![CDATA[本专栏专门针对于区块链的学习欢迎各位朋友来评论，文章都是一些自己对区块链的了解。一直持续更新中...

基础知识

1、P2P



共识算法

1、POW

2、POS

3、DPOS

4、拜占庭

5、POC

解决吞吐量以及全网通知速度方式

1、侧链

2、DAG

    IOTA

    byteball( 字节雪球)

    NANO

3、分片



区块链3.0方向

1、Hyperledger



2、EOS



3、CyberV...]]></description><category></category></item><item><title><![CDATA[P2P对等服务]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106257715</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/106257715</guid><author>JavaWeb_Hao</author><pubDate>Thu, 21 May 2020 15:38:10 +0800</pubDate><description><![CDATA[简介 

P2P(Peer-2-Peer)对等节点，其是一种协议，也是一种模式，类似于C/S模式。

C/S与P2P区别

   C/S（Client/Server）客户端服务端模式。其体现出来的是中心化概念，我们作为用户，我们的联网的电脑其实就是客户端，现在有一个桌面应用程序，其服务端在国内的某个性能比较高的服务器上面。

  当用户通过客户端APP发送请求之后，去服务器发送请求，并拿到对应接口的数据，这个过程中，客户端是不固定的，但是服务器端是固定的，如果服务器端挂了，那么这个APP的...]]></description><category></category></item><item><title><![CDATA[win10使用自带的IIS搭建FTP服务器]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/104478825</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/104478825</guid><author>JavaWeb_Hao</author><pubDate>Mon, 24 Feb 2020 15:43:14 +0800</pubDate><description><![CDATA[简述

简单来说，一共分为三步：

1、创建账号（当然，这一步可以省略，因为创建这个用户是为了为了ftp服务器赋予用户权限使用的，如果不创建新用户可以使用原有的用户）

2、安装ftp服务器



3、通过IIS为ftp服务器赋予权限



创建用户

控制面板\系统和安全\管理工具\计算机管理

展开“本地用户和组”，右键用户，选择新用户，创建一个新用户











...]]></description><category></category></item><item><title><![CDATA[Docker下载jdk镜像并简单使用]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/103537865</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/103537865</guid><author>JavaWeb_Hao</author><pubDate>Sat, 14 Dec 2019 12:35:34 +0800</pubDate><description><![CDATA[Docker安装JDK镜像

下载jdk镜像

1、查找镜像

docker searck jdk





2、下载镜像

docker pull openjdk





3、查看镜像

docker images



4、实例化为容器,并进入容器内



docker run –it openjdk /bin/bash



其实在这里面运行java –version就可以看到jdk...]]></description><category></category></item><item><title><![CDATA[Centos7下Docker安装]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/103537708</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/103537708</guid><author>JavaWeb_Hao</author><pubDate>Sat, 14 Dec 2019 12:11:07 +0800</pubDate><description><![CDATA[Docker安装

1、安装docker依赖

yum install -y yum-utils device-mapper-persistent-data lvm2



2、设置仓库



yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo





3、...]]></description><category></category></item><item><title><![CDATA[mysql之隔离级别]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101084802</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101084802</guid><author>JavaWeb_Hao</author><pubDate>Sat, 21 Sep 2019 00:34:44 +0800</pubDate><description><![CDATA[序言

  隔离级别是mysq数据库中的基础部分，明白了隔离级别有助于我们了解mysql并发以及锁机制，锁机制就是解决在隔离级别的基础上解决并发问题的补充手段。

什么是隔离级别？隔离级别有什么用？

 任何支持的数据库，都必须具备着四个特性，原子性、一致性、隔离性、持久性，这样才能够保证数据的正确性。

 事务的隔离性就是指，多个并发的事务同时访问一个数据库时一个事务不应该被另外一个...]]></description><category></category></item><item><title><![CDATA[mysql索引以及算法数据结构]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101041810</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101041810</guid><author>JavaWeb_Hao</author><pubDate>Sat, 21 Sep 2019 00:08:25 +0800</pubDate><description><![CDATA[一、序言

  这个问题是属于mysql中比较有难度的问题了，毕竟数据结构是构成计算机的重要部分，做过开发的朋友都知道索引能够帮助我们提升sql查询的能力，但是索引到底是什么？为什么能够做到这一点，接下来就揭开索引的面纱。

二、索引是什么？为什么使用索引？

  索引简单来说就是帮助我们优化sql，提升查询性能的一种手段，也可以说它是一种数据结构，索引就是通过不断的缩小想要的数据的范围筛...]]></description><category></category></item><item><title><![CDATA[mysql之事务讲解]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101041361</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101041361</guid><author>JavaWeb_Hao</author><pubDate>Fri, 20 Sep 2019 00:46:20 +0800</pubDate><description><![CDATA[一、序言

  事务保证了我们的项目的一致性，这也是我们开发中选择使用InnoBD而不是MyISAM的最根本的原因

二、什么是事务？事务有什么用？

  使用俗话来说就是执行一些列的非原子性操作，最终能够保证达到原子性操作的一种手段。保证数据的完整性，毕竟现代的信息化世界可以说都是以数据为基础的，那么操作数据必然要保证数据的完整性。

  举个例子来说：银行转账：张三给李四转了100...]]></description><category></category></item><item><title><![CDATA[mysql之引擎分析]]></title><link>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101040354</link><guid>https://blog.youkuaiyun.com/JavaWeb_Hao/article/details/101040354</guid><author>JavaWeb_Hao</author><pubDate>Fri, 20 Sep 2019 00:23:55 +0800</pubDate><description><![CDATA[序言

  mysql的引擎有好多种，不同的引擎有不同的好处，但是又各有各的缺点，不论面试还是工作中，我们涉及最多的就是InnoDB和MyISAM了，其中InnoDB还是首选了，所以本文主要以InnoDB为主，MyISAM为辅，虽然好多的博文都说了数据库引擎，但是我还是要将自己最近的心得拿出来给大家分享一下。

一、数据库引擎是什么？有什么用？

 我认为最现实一点的就是面试mysql的时...]]></description><category></category></item></channel></rss>