摘要: 上一篇:微服务架构基本原理学习笔记(一) 三、微服务架构 从一个已有的单体架构的应用程序开始进行微服务架构的重构往往是一个不错的选择。随着业务量和功能的增加,我们可以考虑使用微服务架构来扩充应用程序中原有的功能,或者每次添加新功能时,都为其创建一个新的微服务。这比从一开始就选择使用微服务架构进行设计 阅读全文
posted @ 2023-06-01 10:24 Jaxu 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 一、什么是微服务 微服务是一种技术架构,通常我们可以把它理解为一组可以相互之间协同工作的应用程序或服务,这些应用程序或服务能够被单独部署到不同的服务器中,并且能够自主运行和维护。 微服务技术只是一个名称而已,或许我们在日常工作中已经或多或少在使用其中的一种或几种技术和架构,但我们并没有将其称之为微服 阅读全文
posted @ 2023-05-24 14:52 Jaxu 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 上一篇我介绍了如何在VSCode Webview中实现点击链接下载图片或文件,本文介绍如何在默认浏览器中打开一个新的页面。 在浏览器中,如果要实现打开一个新的页面有许多种不同的方法,例如: window.open("https://www.cnblogs.com/jaxu", "_blank"); 阅读全文
posted @ 2023-05-09 19:13 Jaxu 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 众所周知,在一个普通的HTML页面中,如果要实现一个链接点击后下载图片,只需要在页面上放一个<a>标签,然后将属性href的值指向图片的URL或者Base64字符串就可以了。或者按照stackoverflow上提供的方法动态创建<a>标签来完成图片的下载动作。不过原理都是相同的。 但是这个方法在VS 阅读全文
posted @ 2023-04-26 21:40 Jaxu 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 今天早上打开电脑,更新了日常工作的github仓库,然后就是习惯性地执行了"npm install",发现报了下面这个错误: Error: error:0308010C:digital envelope routines::unsupported 顺便看了一下错误堆栈,发现是一个Node的内核文件抛 阅读全文
posted @ 2023-03-02 11:27 Jaxu 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 参考sapui5 TreeTable控件的示例,我们发现所有的可展开列(即所谓的hierarchical data column)默认都在第一列,而且API中并没有给出对应的属性或方法来重新指定可展开列在table中的位置。 我们可以编写一个自定义控件,使其继承sapui5的TreeTable控件, 阅读全文
posted @ 2023-01-13 14:55 Jaxu 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 前段时间在用Promise.all执行一个非常大批量的操作时遇到一个奇怪的问题。 这个Promise.all需要遍历一个指定目录中的所有文件,并以异步的方式读取文件内容并进行后续操作。由于目录中的文件数目比较多(大约8000+),Promise.all在执行的过程中有许多文件读取失败,但是如果指定一 阅读全文
posted @ 2022-07-26 18:02 Jaxu 阅读(546) 评论(0) 推荐(0) 编辑
摘要: JavaScript使用符号三个点(...)作为剩余运算符和展开运算符,不过这两个运算符是有区别的。 最主要的区别就是,剩余运算符将用户提供的某些特定值的其余部分放入JavaScript数组中,而展开运算符则将可迭代的对象展开为单个元素。 例如下面这段代码,其中使用了剩余运算符将部分值存放到数组中: 阅读全文
posted @ 2021-12-27 22:04 Jaxu 阅读(683) 评论(0) 推荐(2) 编辑
摘要: 我们曾经试图遵循良好的编程习惯,在创建和定义方法时尽可能按照“职责单一”和“开放-封闭”原则将那些没有必要暴露出来的方法定义为私有方法,但是在编写测试用例时又往往对这些设计原则嗤之以鼻,因为你会为无法编写测试这些私有方法的测试用例而感到苦恼。 从互联网上找到的许多方法都不是最优解决方案。在本文中,我 阅读全文
posted @ 2021-12-07 11:32 Jaxu 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 我们在开发Visual Studio Code插件时,经常需要通过Visual Studio Code提供的API来进行一些UI操作,例如打开文档、修改并保存文档内容、关闭文档、打开功能面板等,有些功能可以通过查看Visual Studio Code的官方文档找到对应的API接口和相应的对象,但很多 阅读全文
posted @ 2021-10-21 21:50 Jaxu 阅读(819) 评论(0) 推荐(0) 编辑
摘要: 在JavaScript中,我们通常可以像下面的代码这样来简单地定义一个类: var sample = function() { // constructor code here } sample.prototype.func1 = function() { // func1 code here } 阅读全文
posted @ 2021-10-08 20:49 Jaxu 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 首先,本文不是一篇介绍有关TypeScript、JavaScript或其它编程语言数据结构和算法的文章。如果你正在准备一场面试,或者学习某一个课程,互联网上可以找到许多相关的资源,我个人比较推崇hackerrank.com。 本文的主要目的在于帮助你了解并熟知以下两点: 如何用TypeScript编 阅读全文
posted @ 2021-10-07 02:09 Jaxu 阅读(721) 评论(0) 推荐(0) 编辑
摘要: 今天发现一个可以通过CSS使DIV的垂直滚动条保持在底部的方法,记录一下! .container { height: 100px; overflow: auto; display: flex; flex-direction: column-reverse; } 在线查看例子:https://code 阅读全文
posted @ 2021-08-31 22:33 Jaxu 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 我们在用TypeScript编写VSCode Extension应用时,可以通过VSCode API提供的内置Command "vscode.diff"来快速比较两个文档,有关该命令的参数介绍可以查看官方文档。基本用法如下: vscode.commands.executeCommand("vscod 阅读全文
posted @ 2021-07-28 13:05 Jaxu 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 作为一名Java程序员,我们经常需要在不同的Java版本下运行我们的应用程序,或者,我们想在不同Java版本上尝试运行我们的代码。当然,如果你在IDE下工作,可以非常轻松地切换Java版本(大部分IDE都提供该功能),但是如果你只想在CMD下运行Java程序,而又不想频繁地去修改系统环境变量,有什么 阅读全文
posted @ 2021-07-05 16:41 Jaxu 阅读(15931) 评论(1) 推荐(3) 编辑
摘要: 看到标题你可能会想,如此简单的问题值得去探究吗?如果我有一个json object,只需下面简单的几行代码就可以完成: var obj = { "_id": "5078c3a803ff4197dc81fbfb", "email": "user1@gmail.com", "image": "some_ 阅读全文
posted @ 2021-06-01 12:42 Jaxu 阅读(3163) 评论(0) 推荐(0) 编辑
摘要: 最近在执行一个gulp任务时遇到下面这个错误: Google的结果是说这个是gulp 3在Node 12.x上的一个bug。解决的办法有两个:要么通过nvm将node版本降到12以下,要么将gulp升级到4。由于我工作的电脑上还有其它的项目需要依赖node 12.x版本,所以只能采用第二种办法,将g 阅读全文
posted @ 2021-04-15 14:45 Jaxu 阅读(633) 评论(0) 推荐(0) 编辑
摘要: 当你使用npm安装一个package时,会在当前目录的node_modules目录中生成一个对应的package目录,其中包含了该package所有的文件。如果你想运行这个package目录里的文件,通常的做法是切换到这个目录下,然后执行对应的文件。 例如你在项目中安装了karma依赖项,如果想直接 阅读全文
posted @ 2021-03-08 19:19 Jaxu 阅读(1244) 评论(0) 推荐(0) 编辑
摘要: 不久前自己工作的电脑上Node.js升级了,导致有一个依赖的项目无法正常启动,于是到Google上搜了一把,找到stackoverflow上的一个解决办法。基本意思是说当前的Node.js版本和gulp 3不兼容,要么将gulp升级到4,要么将Node.js降回到原来的版本。于是忽然想到之前在Ubu 阅读全文
posted @ 2020-10-30 20:33 Jaxu 阅读(9836) 评论(3) 推荐(1) 编辑
摘要: 众所周知,jQuery提供了css方法,用来给指定的元素设置css样式,或者返回一个或多个样式属性,具体的介绍可以参考W3school上的说明。 不过,通过这种方式给元素设置样式时,!important标记会被忽略掉。例如下面的代码: $("p").css("min-height", "calc(1 阅读全文
posted @ 2020-08-27 14:54 Jaxu 阅读(1164) 评论(0) 推荐(1) 编辑