
架构
文章平均质量分 83
←微信
这个作者很懒,什么都没留下…
展开
-
SpringBoot2.x基础篇:配置文件中占位符的使用
占位符是一种灵活的配置方式,可以让我们很灵活的使用配置参数,@Value注解的配置也是占位符的一种体现方式,这种方式可以从Environment内获取对应的配置值。推荐阅读SpringBoot2.x 教程汇总配置方式在application.yml/properties配置文件内可以直接使用占位符来进行配置的相互引用,如下所示:system:name: spring.applicati...原创 2020-03-23 21:36:13 · 894 阅读 · 0 评论 -
一文理解 this、call、apply、bind
记得差不多在两年多之前写过一篇文章 两句话理解js中的this,当时总结的两句话原话是这样的:普通函数指向函数的调用者:有个简便的方法就是看函数前面有没有点,如果有点,那么就指向点前面的那个值;箭头函数指向函数所在的所用域: 注意理解作用域,只有函数的{}构成作用域,对象的{}以及 if(){}都不构成作用域;当时对this的内部原理什么的都理解的不是很深刻,就只能凭借遇到很多坑之后,总结了...原创 2020-03-17 20:08:26 · 280 阅读 · 0 评论 -
学习Java. 基础 21: String类的详解
字符串是日常开发中最常用的。代表一个字符序列,其底层为字符数组1.2. 常见方法构造方法名称 描述String(String original) 把字符串数据封装成字符串对象String(char[] value) 把字符数组的数据封装成字符串对象String(char[] value,int offset, int count) 把字符数组中的一部分数据封装成字符串对象。offset:...原创 2020-03-14 12:12:35 · 146 阅读 · 0 评论 -
iOS UIImagePickerController上载后结果图像方向
我正在iOS 3.1.3 iPhone上测试我的iPhone应用程序。 我正在使用UIImagePickerController选择/捕获图像:UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];[imagePicker setSourceType:UIImagePickerControll...原创 2020-03-14 12:10:16 · 289 阅读 · 0 评论 -
惊讶!缓存刚Put再Get居然获取不到?
最近一直在老家远程办公,微信突然响了下,有同事说遇到了一个奇怪的问题,让我帮忙看下。现象就是标题所说的缓存获取不到的问题,我一听感觉这个问题挺有意思的,决定一探究竟。下面给出部分代码还原下案发现场:@CreateCache(name = “demo”, expire = 600)private Cache<String, ThirdPartyEventResponse> cac...原创 2020-02-26 11:01:09 · 473 阅读 · 0 评论 -
如何使用GROUP BY连接SQL Server中的字符串
如何得到:id Name Value1 A 41 B 82 C 9至id Column1 A:4, B:82 C:9#1楼一个例子是在Oracle中,您可以使用LISTAGG聚合函数。原始记...原创 2020-02-25 20:53:22 · 276 阅读 · 0 评论 -
使用SparkLauncher提交Spark作业
通常情况下,使用spark-submit来提交作业。是否有办法使用代码动态地提交作业?本文使用SparkLauncher提供了一种解决方法。提交Spark Applicationval handle: SparkAppHandle = newSparkLauncher().setSparkHome("/path/to/spark/home").setAppResource("/path...原创 2020-02-25 20:52:05 · 1537 阅读 · 0 评论 -
面试总被问分库分表怎么办?你可以这样怼他
了面试的高频词汇,这些知识不了解面试通过率不会太高。你可以不会用,但你不能不知道,就是这么一种现状。技术名词大多晦涩难懂,不要死记硬背理解最重要,当你捅破那层窗户纸,发现其实它也就那么回事。一、为什么要分库分表关系型数据库以MySQL为例,单机的存储能力、连接数是有限的,它自身就很容易会成为系统的瓶颈。当单表数据量在百万以里时,我们还可以通过添加从库、优化索引提升性能。一旦数据量朝着千万...原创 2020-02-25 10:43:04 · 182 阅读 · 0 评论 -
探索ThreadLocal
ThreadLocal是一个线程内部的变量,只在本线程中使用,隔离其他线程ThreadLocal内部维护了一个ThreadLocalMapThread内部引用了ThreadLocalMapThreadLocalMap可以保存键值对,但是一个ThreadLocal只能保存一个值,并且各个线程数据互不干扰ThreadLocalMap存储时的key永远为当前的ThreadLocalThread...原创 2020-02-24 21:21:14 · 125 阅读 · 0 评论 -
TCP协议灵魂之问,巩固你的网路底层基础
TCP 作为传输层的协议,是一个软件工程师素养的体现,也是面试中经常被问到的知识点。在此,我将 TCP 核心的一些问题梳理了一下,希望能帮到各位。能不能说一说 TCP 和 UDP 的区别?首先概括一下基本的区别:TCP是一个面向连接的、可靠的、基于字节流的传输层协议。而UDP是一个面向无连接的传输层协议。(就这么简单,其它TCP的特性也就没有了)。具体来分析,和 UDP 相比,TCP ...原创 2020-02-24 21:19:02 · 548 阅读 · 0 评论 -
Mybatis自定义SQL更新JSON字段抛错
Cause: java.lang.IllegalStateException: Type handler was null on parameter mapping for property ‘carouselPic’. It was either not specified and/or could not be found for the javaType ([Ljava.lang.Strin...原创 2020-02-23 20:52:14 · 1331 阅读 · 1 评论 -
在Notepad ++中删除空行
如何在Notepad ++中替换空行? 我尝试了一个find并用find中的空行替换,并且替换中没有任何内容,但它没有用; 它可能需要正则表达式。#1楼如果空行包含制表符或空格,这显然不起作用。 由于HTML编辑器出错,许多网页(例如http://www.guardian.co.uk/ )都包含这些白线。使用正则表达式删除空格,如下所示:改变模式:[\ t] + $什么都没有。其中[\ ...原创 2020-02-23 20:46:07 · 781 阅读 · 0 评论 -
127个常用的JS代码片段,每段代码花30秒就能看懂
大家好,首先感谢大家对上一篇文章 127个常用的JS代码片段,每段代码花30秒就能看懂(一)的关注,在上篇文章里分享了前21段代码,今天继续分享21段代码,希望对你的日常工作有所帮助。22、deepFlatten通过递归的形式,将多维数组展平成一维数组。const deepFlatten = arr => [].concat(…arr.map(v => (Array.isArray...原创 2020-02-21 11:10:49 · 312 阅读 · 0 评论 -
正则表达式引擎执行原理——从未如此清晰!
目前越来越多的网站、编辑器、编程语言都已支持一种叫“正则表达式”的字符串查找“公式”,有过编程经验的同学都应该了解正则表达式(Regular Expression 简写regex)是什么东西,它是一种字符串匹配的模式(pattern),更像是一种逻辑公式。使用正则表达式去匹配字符串Hello World 中的 Hello伪代码:/Hello/, “Hello World”输出:Hello复...原创 2020-02-19 20:30:47 · 351 阅读 · 0 评论 -
如何高效地远程部署?自动化运维利器 Fabric 教程
关于 Python 自动化的话题,在上一篇文章中,我介绍了 Invoke 库,它是 Fabric 的最重要组件之一。Fabric 也是一个被广泛应用的自动化工具库,是不得不提的自动化运维利器,所以,本文将来介绍一下它。Fabric 主要用在应用部署与系统管理等任务的自动化,简单轻量级,提供有丰富的 SSH 扩展接口。在 Fabric 1.x 版本中,它混杂了本地及远程两类功能;但自 Fabric...原创 2020-02-18 20:08:17 · 234 阅读 · 0 评论 -
一文带你怼明白进程和线程通信原理
进程是需要频繁的和其他进程进行交流的。例如,在一个 shell 管道中,第一个进程的输出必须传递给第二个进程,这样沿着管道进行下去。因此,进程之间如果需要通信的话,必须要使用一种良好的数据结构以至于不能被中断。下面我们会一起讨论有关 进程间通信(Inter Process Communication, IPC) 的问题。关于进程间的通信,这里有三个问题上面提到了第一个问题,那就是一个进程如何传...原创 2020-02-18 20:07:37 · 221 阅读 · 0 评论 -
彻底搞懂vue之vuex原理篇
你真的懂vuex吗?先抛出几个问题?命名空间的原理?辅助函数的原理?插件用法是否了解?为什么每个组件都能访问到store这个实例属性?为什么访问this.store这个实例属性?为什么访问this.store这个实例属性?为什么访问this.store.getters[‘a/xx’]而不是this.KaTeX parse error: Unexpected character: '�' at po...原创 2020-02-16 20:41:52 · 1186 阅读 · 0 评论 -
javascript正则表达式 | 知识梳理
正则表达式由pattern和flags组成,我不知道怎么翻译这个,我用我自己的话解释一下,pattern可以理解为一个函数(做什么), flags可以理解为参数, 比如flags为g为全局匹配,i为忽略大小写。字面量这种方法最方便简单// /pattern/flagslet reg = /\d/gconsole.log(reg)复制代码构造函数这种方法比字面量麻烦,它的pattern...原创 2020-02-16 20:40:32 · 106 阅读 · 0 评论 -
一文详解微服务架构
本文将介绍微服务架构和相关的组件,介绍他们是什么以及为什么要使用微服务架构和这些组件。本文侧重于简明地表达微服务架构的全局图景,因此不会涉及具体如何使用组件等细节。要理解微服务,首先要先理解不是微服务的那些。通常跟微服务相对的是单体应用,即将所有功能都打包成在一个独立单元的应用程序。从单体应用到微服务并不是一蹴而就的,这是一个逐渐演变的过程。本文将以一个网上超市应用为例来说明这一过程。最初的需...原创 2020-02-15 22:25:03 · 162 阅读 · 0 评论