生产故障处理SOP分享

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2022/9/8
阅读更多

系统稳定性建设实践总结【转载】

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2022/8/1
阅读更多

valine访问leancloud国际版异常,评论失效修复

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2022/1/11
阅读更多

匆匆忙忙的2021

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2022/1/2
阅读更多

聊一下换工作

<p>近半年博客都没怎么更新和维护,一方面确实是忙,另一方面就是一直在为找工作奔波。</p> <p>终于工作也尘埃落定,马上也要入职,最近在处理工作交接的事情,就写一篇文章来记录下人生中第一次换工作的经历吧。</p>

2021/3/13
阅读更多

IoT系列(2):WIFI设备常见配网方案介绍

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>本文讨论目前市面上基于WIFI智能设备的配网方案,结合自身开发案例,对不同的配网方案进行对比介绍。</p> <p>阅读本文你可以了解到如下几种配网方案:</p> <ol> <li>一键配网</li> <li>设备热点配网</li> <li>零配</li> <li>手机热点配网</li> </ol>

2021/1/15
阅读更多

IoT系列(1):什么是物联网

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>本文主要讨论物联网的相关概念知识,阅读本文你会有如下几点了解:</p> <ol> <li>物联网概念引入</li> <li>物联网与互联网的区别与联系</li> <li>什么是物联网</li> <li>物联网在我们生活中有哪些应用</li> </ol>

2021/1/14
阅读更多

Java8特性2 - StreamApi

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/11/15
阅读更多

Java8特性1 - lambda表达式&函数式接口

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/11/10
阅读更多

设计模式(5)-适配器模式

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/10/11
阅读更多

设计模式(4)-建造者模式

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/9/29
阅读更多

设计模式(3)-原型模式与浅拷贝和深拷贝

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/9/5
阅读更多

设计模式(2)-工厂模式图文介绍

<h1 id="工厂模式"><a class="markdownIt-Anchor" href="#工厂模式"></a> 工厂模式</h1> <p>工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。</p> <p>在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。</p>

2020/8/30
阅读更多

设计模式(1)-带你了解3类8种单例模式

<h1 id="单例模式的分类"><a class="markdownIt-Anchor" href="#单例模式的分类"></a> 单例模式的分类</h1> <ul> <li>饿汉式 <ul> <li>静态常量</li> <li>静态代码块</li> </ul> </li> <li>懒汉式 <ul> <li>线程不安全</li> <li>线程安全,同步方法</li> <li>线程安全,同步代码块</li> <li>双重检查锁</li> <li>静态内部类</li> </ul> </li> <li>枚举</li> </ul>

2020/8/29
阅读更多

Java时间处理5---Java8中时区相关类库介绍

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>在Java8以前,我们对于时区的处理通常是为时间转换类设置指定TimeZone,然后进行时区时间转换。</p> <p>而在Java8中不仅对时间日期进行了细粒度处理,有无时区,时区处理也进行了更加细粒度的优化。</p> <p>在之前我们介绍的新类库中基本都是无时区概念的。本文将引入时区概念。</p>

2020/7/10
阅读更多

Java时间处理4---Java8中LocalDate、LocalTime、LocalDateTime介绍

<h2 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h2> <p>在Java8中,对于日期、时间、时间日期有不同的对象来表示,分别就是LocalDate、LocalTime、LocalDateTime</p> <p>他们都位于<code>java.time</code>包下,并且他们都仅单纯的表示一个不可变的时间对象,无时区等附加信息的出现</p>

2020/7/10
阅读更多

Java时间处理3---Java8中Instant、Duration、Period、Clock介绍

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前面文章对Java中的Date和Calendar类进行了介绍,在Java8以前,Javaer处理时间基本都是使用这两个类。</p> <p>然鹅在使用过程中一个很尴尬的场景就是Date大部分方法废弃,Calendar又有很多不太友好的设计(月份从0开始)</p>

2020/6/10
阅读更多

一些有意思的问答

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/4/20
阅读更多

Nacos系列博客说明

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2020/3/25
阅读更多

菜鸡程序员的2019年度总结

<h1 id="碎碎念"><a class="markdownIt-Anchor" href="#碎碎念"></a> 碎碎念</h1> <p>写这篇总结时已经是2020年的第一天了。不得不感慨时间过得太快,记忆中的2019仿佛一片空白,但是细细回味之后,这一年许多人许多事都还历历在目。</p> <p>2019年过去,2020的到来。第一批90后已经迈三奔四,同样作为90后的我不由得意识到自己的年龄,自己确实已经不小了。但一想到自己的现状,只能说:<code>革命尚未成功,我辈仍需继续努力!!!</code></p> <blockquote> <p>灵魂拷问: 时间回到2019年年初,你当时立下的flag,现在又完成了多少呢?(反正我是惨不忍睹…)</p> </blockquote>

2020/1/1
阅读更多

Java中“附近的人”实现方案讨论及代码实现

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>在我们平时使用的许多app中有<code>附近的人</code>这一功能,像微信、qq附近的人,哈罗、街兔附近的车辆。这些功能就在我们日常生活中出现。</p> <blockquote> <p>像类似于附近的人这一类业务,在Java中是如何实现的呢?</p> </blockquote> <p>本文就简单介绍下目前的几种解决方案,并提供简单的示例代码</p> <p>注: 本文仅涉及<code>附近的人</code>这一业务场景的解决方案讨论,并未涉及到相关的技术细节和方案优化,各位看官可以放心阅读。</p>

2019/12/18
阅读更多

Java时间处理2----时区TimeZone类方法探究(Java8以前)

<blockquote> <p>本文转载于<code>CSDN博主「Gene Xu」</code><br> 原文链接:<a href="https://blog.csdn.net/goodbye_youth/article/details/81807273" target="_blank" rel="noopener">https://blog.csdn.net/goodbye_youth/article/details/81807273</a></p> </blockquote> <h1 id="一-timezone-类的定义"><a class="markdownIt-Anchor" href="#一-timezone-类的定义"></a> 一、TimeZone 类的定义</h1> <p>TimeZone 类位于 java.util 包中,是一个抽象类,主要包含了对于时区的各种操作,可以进行计算时间偏移量或夏令时等操作</p>

2019/11/22
阅读更多

Java时间处理1----Date和Calendar方法探究(Java8以前)

<h2 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h2> <p>时间的处理在Java中会经常用到,Java中常用的时间处理类有如下两种:</p>

2019/11/21
阅读更多

FastJson中JSONString、JavaBean、JSONObject、JSONArray的转换关系及API示例

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/11/20
阅读更多

2019.11软考软件设计师归来心得体会及复习备考指南

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <blockquote> <p>本文<code>文字量比较大</code>,废话比较多😂。如果感到不适,建议<code>直接阅读各段标题</code>即可<br> 干货和建议都在标题栏,📢文末有我整理的<code>2019软件设计师考点思维脑图</code>,以及备考<code>资料</code>大全分享</p> </blockquote> <blockquote> <p><code>2019.12.18更新</code>:昨天得知成绩已出,没想到过了,此处省略1W个哈哈哈😁…(<code>58/62</code>,同志们我们高级见~)</p> </blockquote> <p>上周六(11.09)参加了软考软件设计师的考试,考试分上午场和下午场。总的来说题型比较常规,但是作为<code>战五渣</code>的我还是很担心能否过线😭。(个人感觉这次是下午简单<code>上午难</code>)</p>

2019/11/12
阅读更多

你还没用过“约定式提交”吗?那你赶紧来补补知识吧

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>本文为介绍约定式提交,主要从以下几点展开:</p> <ul> <li><a href="">现状分析</a></li> <li><a href="">约定式提交</a> <ul> <li><a href="">优点</a></li> <li><a href="">规范</a></li> </ul> </li> <li><a href="">commitizen</a></li> <li><a href="">standard-version</a></li> </ul> <p>本文对应的github项目地址:<a href="https://github.com/larscheng/Conventional-Commits-Demo" target="_blank" rel="noopener">https://github.com/larscheng/Conventional-Commits-Demo</a></p>

2019/11/11
阅读更多

教你如何看懂UML中的类图及类图中的关系

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>本文作为设计模式系列的第零篇文章,其主要时教大家如何去看懂设计模式中常见的类图,以及类间的关系。因为无论你从哪里学习设计模式,都避免不了类图的阅读和理解。</p> <p>本文主要从以下几个方面介绍:</p> <ol> <li><strong>UML介绍</strong></li> <li><strong>类图介绍</strong></li> <li><strong>类与类之间的关系</strong></li> </ol>

2019/10/29
阅读更多

设计模式总览

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前段时间,跟着<code>Gang of Four</code>学习了设计模式,虽然23种设计模式都过了一遍,<code>好像懂了但是好像又有些不明白</code>。刚好在软考备考时设计模式也是考点。故此,通过这一次的再复习索性整理出设计模式的一套学习笔记,<code>笔记中会通过生活中的例子详细讲解各种常用模式,并利用Java代码实现。</code></p> <blockquote> <p>本文主要通过以下几点来对设计模式进行总结:</p> </blockquote> <ol> <li><strong>设计模式的背景</strong></li> <li><strong>设计模式的概念</strong></li> <li><strong>设计模式的的7大原则</strong></li> <li><strong>设计模式的的4大要素</strong></li> <li><strong>常见的23种设计模式</strong></li> </ol>

2019/10/29
阅读更多

萌新入门Github请看这里,学不会远程教

<p><img src="http://dingyue.nosdn.127.net/JcpLscAwNgVArlscUVGqvcI53bmIQlpy9TID6kp1NFk1d1540607416695compressflag.jpg" alt=""></p> <h1 id="一些废话"><a class="markdownIt-Anchor" href="#一些废话"></a> 一些废话</h1> <blockquote> <p>本文的主旨是为初次接触Github的同学提供一个入门的演示,如果你已经是Github老鸟,可以忽略本文哦,另外本文只是抛砖引玉,其实最好的教程是官方文档!!!</p> </blockquote> <ul> <li><a href="https://github.com/" target="_blank" rel="noopener">Github官网</a></li> <li><a href="https://guides.github.com/activities/hello-world/" target="_blank" rel="noopener">Github使用指南-Web页面</a></li> <li><a href="https://help.github.com/cn/enterprise/2.18/user" target="_blank" rel="noopener">Github官方中文版文档-ALL</a></li> </ul>

2019/10/14
阅读更多

Hexo的工作原理探究

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/26
阅读更多

Hexo-theme-butterfly修改调整记录教程

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/19
阅读更多

排序8:基数排序

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/12
阅读更多

排序7:归并排序

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/11
阅读更多

排序6:快速排序

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/10
阅读更多

排序5:冒泡排序

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/9
阅读更多

排序4:堆排序

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/8
阅读更多

排序3:选择排序

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/9/7
阅读更多

排序2:希尔排序

<blockquote> <p><a href="https://www.larscheng.com/others/allsort/">❤查看排序算法动态演示❤查看排序算法动态演示❤查看排序算法动态演示</a></p> </blockquote> <h1 id="希尔排序-shell-sort"><a class="markdownIt-Anchor" href="#希尔排序-shell-sort"></a> 希尔排序 (Shell Sort)</h1> <p>希尔排序 也称做<code>递减增量排序算法</code>,1959年<code>Shell</code>发明,是插入排序的一种<code>高速而稳定</code>的改进版本</p>

2019/9/6
阅读更多

排序1:直接插入排序

<blockquote> <p>原文作者:<a href="https://itimetraveler.github.io" target="_blank" rel="noopener">Mr.Seven</a><br> 原文地址:<a href="https://itimetraveler.github.io/2017/07/18/%E5%85%AB%E5%A4%A7%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95%E6%80%BB%E7%BB%93%E4%B8%8Ejava%E5%AE%9E%E7%8E%B0/" target="_blank" rel="noopener">八大排序算法总结与java实现</a><br> <a href="https://www.larscheng.com/others/allsort/style/">❤查看排序算法动态演示❤查看排序算法动态演示❤查看排序算法动态演示</a></p> </blockquote> <h1 id="直接插入排序insertion-sort"><a class="markdownIt-Anchor" href="#直接插入排序insertion-sort"></a> 直接插入排序(Insertion Sort)</h1> <p>插入排序的设计初衷是<code>往有序的数组中快速插入一个新的元素</code>。它的算法思想是:把要排序的数组分为了两个部分, 一部分是数组的<code>全部元素</code>(除去待插入的元素), 另一部分是<code>待插入</code>的元素; 先将第一部分排序完成, 然后再插入这个元素. 其中第一部分的排序也是通过再次拆分为两部分来进行的.</p>

2019/9/5
阅读更多

推荐一款博客一文多发的良心工具OpenWrite

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/8/28
阅读更多

近期学习计划

Welcome to my blog, enter password to read.

2019/8/27
阅读更多

Nacos(九):Nacos集群部署和遇到的问题

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前面的系列文章已经介绍了Nacos的如何接入SpringCloud,以及Nacos的基本使用方式</p> <p>之前的文章中都是基于<code>单机模式</code>部署进行讲解的,本文对Nacos的<code>集群</code>部署方式进行说明</p>

2019/8/16
阅读更多

Nacos(八):Nacos持久化

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前景回顾:</p> <ul> <li><a href="https://www.larscheng.com/nacos-shareconfig/">Nacos(七):Nacos共享配置</a></li> <li><a href="https://www.larscheng.com/nacos-namespace/">Nacos(六):多环境下如何“管理”及“隔离”配置和服务</a></li> <li><a href="https://www.larscheng.com/config-profile/">Nacos(五):多环境下如何“读取”Nacos中相应环境的配置</a></li> <li><a href="https://www.larscheng.com/config-service/">Nacos(四):SpringCloud项目中接入Nacos作为配置中心</a></li> </ul> <p>前面的七篇文章,从Nacos介绍,到Nacos做注册中心、做配置中心,一直都没有提及持久化的问题。</p>

2019/8/12
阅读更多

Nacos(七):Nacos共享配置

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前景回顾:</p> <ul> <li><a href="https://www.larscheng.com/nacos-namespace/">Nacos(六):多环境下如何“管理”及“隔离”配置和服务</a></li> <li><a href="https://www.larscheng.com/config-profile/">Nacos(五):多环境下如何“读取”Nacos中相应环境的配置</a></li> <li><a href="https://www.larscheng.com/config-service/">Nacos(四):SpringCloud项目中接入Nacos作为配置中心</a></li> </ul> <p>前几章已经基本介绍了springcloud项目结合Nacos的大部分用法,本文介绍一下Nacos作为配置中心时,如何读取共享配置</p>

2019/8/7
阅读更多

Nacos(六):多环境下如何“管理”及“隔离”配置和服务

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前景回顾:</p> <ul> <li><a href="https://www.larscheng.com/config-profile/">Nacos(五):多环境下如何“读取”Nacos中相应环境的配置</a></li> <li><a href="https://www.larscheng.com/config-service/">Nacos(四):SpringCloud项目中接入Nacos作为配置中心</a></li> </ul> <p>现如今,在微服务体系中,一个系统往往被拆分为多个服务,每个服务都有自己的配置文件,然后每个系统往往还会准备开发环境、测试环境、正式环境</p> <p>我们来说算一算,假设某系统有10个微服务,那么至少有10个配置文件吧,三个环境(dev\test\prod),那就有30个配置文件需要进行管理。</p> <p>这么多的配置文件,要修改一个或者多个的时候,稍有不慎可能就会出现改错了、不生效…等等问题。</p> <p><strong>那么如果引入Nacos作为配置中心后,如何有效的进行配置文件的管理和不同环境间的隔离区分呢?</strong></p> <blockquote> <p>别担心,Namespace可以帮助我们进行多环境下的管理和隔离</p> </blockquote>

2019/8/6
阅读更多

Nacos(五):多环境下如何“读取”Nacos中相应的配置

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>前景回顾:</p> <ul> <li><a href="http://larscheng.coding.me/config-service/" target="_blank" rel="noopener">Nacos(四):SpringCloud项目中接入Nacos作为配置中心</a></li> <li><a href="http://larscheng.coding.me/nacos-openfeign/" target="_blank" rel="noopener">Nacos(三):Nacos与OpenFeign的对接使用</a></li> <li><a href="http://larscheng.coding.me/namingservice/" target="_blank" rel="noopener">Nacos(二):SpringCloud项目中接入Nacos作为注册中心</a></li> </ul> <p>通过前面几篇介绍,已经基本了解了Nacos做为注册中心和配置中心的基本用法。</p> <p>在实际开发中,通常一个系统会准备开发环境、测试环境、预发环境、正式环境</p> <p><strong>那么如何保证指定环境启动时服务能正确读取到Nacos上相应环境的配置文件呢</strong></p> <p>本文主要对Nacos作为配置中心时,如何对多环境配置文件进行读取进行论述。</p>

2019/7/23
阅读更多

Nacos(四):SpringCloud项目中接入Nacos作为配置中心

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>通过前两篇文章:</p> <ul> <li><a href="http://larscheng.coding.me/nacos-openfeign/" target="_blank" rel="noopener">Nacos(二):Nacos与OpenFeign的对接使用</a></li> <li><a href="http://larscheng.coding.me/namingservice/" target="_blank" rel="noopener">Nacos(三):SpringCloud项目中接入Nacos作为注册中心</a></li> </ul> <p>相信大家已经对Nacos作为注册中心的基本使用已经有了一定的了解。</p> <p>然而,Nacos远远不止于此,本文我们来看一下Nacos作为<code>配置中心</code>在SpringCloud中的使用</p>

2019/7/23
阅读更多

Nacos(三):Nacos与OpenFeign的对接使用

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>上篇文章中,简单介绍了<code>如何在SpringCloud项目中接入Nacos作为注册中心</code>,其中服务消费者是通过RestTemplate+Ribbon的方式来进行服务调用的。</p> <p>实际上在日常项目中服务间调用大都用的是<code>OpenFeign</code>, OpenFeign自身整合了Ribbon和Hystrix,为服务调用提供了更优雅的方式</p> <p>那么接入了Nacos之后,服务调用还能用这一套吗?</p> <p>通过我在公司项目上的试水,这个大胆的设想是完全没问题的</p> <p><strong><em>本文在上一篇文章中的项目工程基础上</em>,进行测试和演示,文章地址:<a href="http://larscheng.coding.me/namingservice/" target="_blank" rel="noopener">在SpringCloud项目中接入Nacos作为注册中心</a></strong></p>

2019/7/10
阅读更多

Nacos(二):SpringCloud项目中接入Nacos作为注册中心

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>通过上一篇文章:<a href="http://larscheng.coding.me/nacosinfo/" target="_blank" rel="noopener">Nacos介绍 </a>简单了解了Nacos的发展历程和现状,本文我们开始Nacos试水的第一步: <strong>使用Nacos做注册中心</strong></p> <blockquote> <p>上周末(7.6)Nacos发布了V1.1.0版本,这次更新支持灰度配置、地址服务器模式、配置文件导入导出等其他功能。感觉社区的老哥们都很高产呐…</p> </blockquote> <p>本文主要通过两个项目来完成演示:</p>

2019/7/9
阅读更多

Nacos(一):Nacos介绍

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>6月份阿里开源的Nacos出了1.0.1版本,从去年7月份第一个release版本到现在一直在默默关注</p> <p>官方的版本规划为:Nacos从0.8.0开始支持生产可用,1.0版本可大规模生产可用,2.0版本接入k8s、SpringCloud、ServiceMesh、ServerLess</p> <p>公司目前的项目都是Springcloud,由于eureka2.X的断更、以及Nacos面世,所以自然而然最近就进行了一次试水爬坑,虽然过程艰苦,但是最终效果似乎还不错。</p> <p>本文主要从以下几点来带大家熟悉下Nacos</p>

2019/7/9
阅读更多

20190719小组分享

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/6/19
阅读更多

Java中equals和HashCode方法的分析

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>上一篇文章简单分析了<a href="https://note.youdao.com/" target="_blank" rel="noopener">equals()与==的关系</a>,本文我们再来看看equals()与hashcode()的关系。hashcode的使用还是有很多坑的,一起看看吧~</p> <p>本文主要有以下几点来分析:</p> <ol> <li><strong>hashCode使用中产生的问题</strong></li> <li><strong>equals/hashcode的渊源</strong></li> <li><strong>产生问题的原因</strong></li> <li><strong>正确的使用姿势</strong></li> </ol>

2019/6/17
阅读更多

Java中==和equals方法的分析

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>== 和 equals是经久不衰的面试题,记得刚毕业的时候我也被问到过很多次,从最开始的一脸懵逼到最后的从容回答,本文我们就来分析下这两者之间的区别和联系。</p> <p>为避免阅读疲劳,我这里先放上结论:</p>

2019/6/17
阅读更多

Java中的自动拆装箱、装箱缓存

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>Java 是一种面向对象的编程语言,Java 中的类把方法与数据类型连接在一起,构成了自包含式的处理单元。但在 Java 中不能定义基本类型对象,为了能将基本类型视为对象处理,并能连接相关方法,Java 为每个基本数据类型都提供了包装类,如 int 型数值的包装类 Integer,boolean 型数值的包装类 Boolean 等。这样便可以把这些基本类型转换为对象来处理了。</p>

2019/6/17
阅读更多

About-blog

<link rel="stylesheet" class="aplayer-secondary-style-marker" href="/assets/css/APlayer.min.css"><script src="/assets/js/APlayer.min.js" cla

2019/6/12
阅读更多

Java中的编译、反编译和反编译工具全家桶分享

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>本文介绍到的反编译工具下载地址:<a href="https://pan.baidu.com/s/1Q6LAWLzsedjP-mkDr5kt_w" target="_blank" rel="noopener">反编译工具全家桶</a> , 提取码:<a href="">oxor</a></p>

2019/5/30
阅读更多

finalize()的生命周期(执行过程)

<h3 id="说明"><a class="markdownIt-Anchor" href="#说明"></a> 说明</h3> <p>本文转载自 <a href="https://www.cnblogs.com/Smina/p/7189427.html" target="_blank" rel="noopener">Smina俊</a> 的博客:<a href="https://www.cnblogs.com/Smina/p/7189427.html" target="_blank" rel="noopener">《java finalize方法总结、GC执行finalize的过程》</a></p> <p>博文中关于对象复活的示例和生命周期的过程极为精辟,分享给大家。</p>

2019/5/24
阅读更多

Java关键字之final、finally与finalize方法

<p>Java中有很多关键字,这些关键字中的final、finally和finalize()方法长相十分相似,其实他们仨并没什么特殊的联系,只是单纯的像,本文就简单介绍下他们仨各自的用途。</p>

2019/5/24
阅读更多

Java中重写、重载

<h3 id="重写"><a class="markdownIt-Anchor" href="#重写"></a> 重写</h3> <p>子类继承父类,拥有父类的方法和属性后,子类在保证继承的方法在方法名和参数列不变的情况下,对方法的内部实现进行重新定义,这种现象就是方法重写</p> <p>重写比较侧重于父子差异</p>

2019/5/23
阅读更多

Java中面向对象的三大特征:继承、封装、多态

<h2 id="面向对象的三大特征"><a class="markdownIt-Anchor" href="#面向对象的三大特征"></a> 面向对象的三大特征</h2> <p>继承、封装、多态</p> <p>接口(Interface)是用来定义行为的!</p> <p>抽象类(Abstract Class)是用来实现行为的!</p> <p>具体类(Class)是用来执行行为的!</p> <p>使用了对象就叫基于对象,基于对象的基础上增加了继承从而变成了面向对象。</p>

2019/5/23
阅读更多

DockerFile介绍

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>DockerFile文件通常用来构建自定义镜像,举个不恰当的栗子:</p>

2019/4/30
阅读更多

Docker环境下安装Gitlab

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>在Docker中我们同样可以部署自己专属的代码仓库GitLab,下面简单介绍一下安装流程。</p>

2019/4/30
阅读更多

Docker中私有仓库的搭建流程

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>docker中的仓库就像是我们平时用的git一样,git用来存放管理项目代码,而docker仓库则是专门用来存放管理docker镜像,既然git有公有、私有仓库之分,docker仓库同样不例外,本文介绍如何在docker中安装你专属的私有仓库。</p>

2019/4/25
阅读更多

Centos7下两种方式安装Docker-CE

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>Docker 提供了两个版本:社区版 (CE) 和企业版 (EE)。</p> <p>Docker 社区版 (CE) 是开发人员和小型团队开始使用 Docker 并尝试使用基于容器的应用的理想之选。</p> <p>本文介绍下Docker 社区版 (CE) 在CentOS 7系统中的里两种安装方式</p>

2019/4/25
阅读更多

Vert.x创建一个Http服务

<pre><code>本文是我在学习Vert.x过程中的一些笔记,作为记录。 因为是初学,对Vert.x的理解还不够透彻,如有错误之处我们可以在评论中一起讨论呦。 </code></pre> <h3 id="环境准备"><a class="markdownIt-Anchor" href="#环境准备"></a> 环境准备</h3> <ul> <li>JDK8+</li> <li>Maven</li> <li>IDE</li> <li>Vert.x 3.6.3</li> </ul> <p>本文将会建立一个基本的HTTP服务器,并监听指定端口,任何发往该服务器以及端口的请求,服务器会返回一个字符串。</p> <p>该项目使用Maven构建,当然也可以选择Gradle(<a href="https://vertx.io/docs/vertx-core/java/" target="_blank" rel="noopener">参考vertx.io</a>)</p>

2019/4/3
阅读更多

Vert.x创建TCP服务端及客户端

<pre><code>本文是我在学习Vert.x过程中的一些笔记,作为记录。 因为是初学,对Vert.x的理解还不够透彻,如有错误之处我们可以在评论中一起讨论呦。 </code></pre> <h3 id="环境准备"><a class="markdownIt-Anchor" href="#环境准备"></a> 环境准备</h3> <ul> <li>JDK8+</li> <li>Maven</li> <li>IDE</li> <li>Vert.x 3.6.3</li> </ul> <p>我们通常用到的最多的应该是Http服务,创建一个Http服务端似乎web开发中常有的事情。但是如果有一个需要Tcp服务的场景,这时候我们会想到Socket编程,基于Socket实现一个Tcp服务的过程是及其考验编程水平的,需要手动处理网络和线程问题。于是乎我们又想到了Netty,用Netty来实现Tcp服务似乎也不错啊,他简化了传统的Nio操作,但是如果没有接触过Netty则需要从头学习,学习成本较高。其实我们可以使用Vertx来创建Tcp服务,因为Vert.x本来就是基于Netty的,而且通过Vertx创建Tcp服务非常方便。</p>

2019/4/2
阅读更多

Vert.x Core(二)- Event Bus(事件总线)

<pre><code>本文是我在学习Vert.x过程中的一些笔记,作为记录。 因为是初学,对Vert.x的理解还不够透彻,如有错误之处我们可以在评论中一起讨论呦。 </code></pre> <h3 id="概述"><a class="markdownIt-Anchor" href="#概述"></a> 概述</h3> <pre><code>The event bus is the nervous system of Vert.x </code></pre> <p>EnventBus是Vert.x的神经系统,EventBus为Verticle之间提供通讯和信息传递的基础。这种方式提供了一个简单但有效的解耦。</p>

2019/4/2
阅读更多

Vert.x-Core(一)- 基础篇

<pre><code>本文是我在学习Vert.x过程中的一些笔记,作为记录。 因为是初学,对Vert.x的理解还不够透彻,如有错误之处我们可以在评论中一起讨论呦。 </code></pre> <h3 id="vertx-core模块是vertx的根基"><a class="markdownIt-Anchor" href="#vertx-core模块是vertx的根基"></a> Vert.x core模块是vertx的根基</h3> <p>是基于netty的一个工具包,提供tcp、http、websocket、dns、eventbus等基础功能封装</p>

2019/4/1
阅读更多

SpringBoot项目中实现国际化

<h3 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h3> <p>什么是国际化呢?国际惯例,来时来一段官方介绍:</p> <pre><code>国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式。它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素。换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。开发这样的程序的过程,就称为国际化。 </code></pre> <p>在我们实际开发中,一个web应用可能要在多个地区使用,面对不同地区的不同语言,为了适应不同的用户,我们可以尝试在前端页面实现多语言的支持,那么同样对于后端返回的一些提示信息,异常信息等,我们后端也可以根据不同的语言环境来进行国际化处理,返回相应的信息。</p>

2019/4/1
阅读更多

Vert.x介绍

<h2 id="1-vertx不是一个框架而是一个工具包"><a class="markdownIt-Anchor" href="#1-vertx不是一个框架而是一个工具包"></a> 1 Vert.x不是一个框架,而是一个工具包</h2> <p>Vert.x是基于Netty项目——一个基于JVM的高性能异步网络库,它的核心库定义了编写异步网络应用的基本API,你可以为应用程序选择有用的模块(如数据库链接、监控、认证、日志、服务发现、集群支持等),同时它也可以内嵌到现有的应用中(如springboot项目中)既能体验Vert.x的高效又兼顾spring的泛用性</p>

2019/4/1
阅读更多

毕设选题项目本地运行环境搭建教程

The article has been encrypted, please enter your password to view.<br>

2018/10/17
阅读更多

Jupyter Notebooks的安装和使用介绍

<p>最近又开始重新学习Python,学习中使用到了一款编辑器Jupyter Notebooks ,非常想安利给初学python的同学。<br> 注:本文内容仅针对windows环境下安装和配置Jupyter Notebooks 。</p>

2018/10/17
阅读更多

算法笔试题:1元,5元,10元,20元,50元、100元面值人民币组合给定x元的问题

<p>最近有一道笔试题引起了小伙伴们的激烈讨论。</p>

2018/9/17
阅读更多

Quartz学习总结

<h3 id="quartz学习总结"><a class="markdownIt-Anchor" href="#quartz学习总结"></a> Quartz学习总结</h3> <h2 id="常规需求"><a class="markdownIt-Anchor" href="#常规需求"></a> 常规需求</h2> <ul> <li>每天早上的闹钟</li> <li>定时统计数据</li> </ul>

2018/8/31
阅读更多

SpringBoot2.x集成Redis

<h1 id="redis介绍"><a class="markdownIt-Anchor" href="#redis介绍"></a> Redis介绍</h1> <p>Redis数据库是一个完全开源免费的高性能Key-Value数据库。它支持存储的value类型有五种,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)</p> <p>Redis非常快,每秒可执行大约110000次的设置(SET)操作,每秒大约可执行81000次的读取/获取(GET)操作。</p>

2018/8/13
阅读更多

SpringBoot2.x集成MongoDB

<h1 id="mongodb"><a class="markdownIt-Anchor" href="#mongodb"></a> MongoDB</h1> <p>MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是可以应用于各种规模的企业、各个行业以及各类应用程序的开源数据库。基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。</p>

2018/8/9
阅读更多

[SpringCloud学习] - 浅谈微服务架构

<h1 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h1> <p>目前越来越多的话题都围绕着微服务,许多公司也在使用微服务架构。笔者也刚刚接触微服务不久,也算是微服务架构的初学者,谨以本文来记录学习过程中对微服务架构的一些理解。好啦,废话不多说,我们往下看。</p>

2018/7/26
阅读更多

基于hexo和coding免费搭建个人博客网站

<h2 id="前言"><a class="markdownIt-Anchor" href="#前言"></a> 前言</h2> <p>现如今有很多人每天在看博客,也有很多人在各大平台发表博客,今天我们通过hexo博客框架来自己动手搭建一个免费并且完全DIY的个人博客。Hexo的优势在于方便快捷并且提供的主题丰富,本文是笔者在搭建博客期间的一些经验分享。还是先来看一下搭建完成后的效果吧—<a href="http://LarsCheng.coding.me" target="_blank" rel="noopener">我的博客</a>。</p>

2018/7/24
阅读更多

Hello World

<p>Welcome to <a href="https://hexo.io/" target="_blank" rel="noopener">Hexo</a>! This is your very first post. Check <a href="https://hexo.io/docs/" target="_blank" rel="noopener">documentation</a> for more info. If you get any problems when using Hexo, you can find the answer in <a href="https://hexo.io/docs/troubleshooting.html" target="_blank" rel="noopener">troubleshooting</a> or you can ask me on <a href="https://github.com/hexojs/hexo/issues" target="_blank" rel="noopener">GitHub</a>.</p>

2018/7/23
阅读更多