自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mr. David 专栏

整理工作、学习中遇到的问题!

  • 博客(1036)
  • 资源 (60)
  • 收藏
  • 关注

原创 解决: MAC ERROR [internal] load metadata for docker.io/library/openjdk:17

【代码】解决: MAC ERROR [internal] load metadata for docker.io/library/openjdk:17。

2024-03-26 18:40:07 427

原创 macOS系统中通过brew安装MongoDB

本文使用homebrew进行安装简单,因为从官网下载安装包并手动安装需要移动安装包到合适的目录下并配置环境变量等一大堆操作后才能使用数据库(若没有安装过brew请自行百度进行安装brew)1. 使用下面三个命令进行安装,安装的是最新版本6.0.1的MongoDB。2.1 查看版本,判断是否成功安装mongodb。2.3 连接mongo,简单进行测试。

2024-03-16 15:46:24 367

原创 Mac安装Homebrew

Homebrew是 mac的包管理器,仅需执行相应的命令,就能下载安装需要的软件包,可以省掉自己去下载、解压、拖拽(安装)等繁琐的步骤。Homebrew 官方文档。

2024-03-16 15:30:46 158

原创 JVM内存模型——堆(heap)、栈(stack)和方法区(method)

帧数据区 : 除了局部变量表和操作数据栈以外,栈还需要一些数据来支持常量池的解析,这里帧数据区保存着访问常量池的指针,方便计程序访问常量池,另外当函数返回或出现异常时卖虚拟机子必须有一个异常处理表,方便发送异常的时候找到异常的代码,因此异常处理表也是帧数据区的一部分。永久存储区:是一个常驻内存区域,用于存放JDK自身所携带的 Class,Interface 的元数据,也就是说它存储的是运行环境必须的类信息,被装载进此区域的数据是不会被垃圾回收器回收掉的,关闭 JVM 才会释放此区域所占用的内存。

2024-03-12 08:52:12 653

原创 mockito when thenanswer

其中,mockObject 是被模拟的对象,method 是被模拟的方法,argument 是传入该方法的参数,value 是要返回的结果。总的来说,Mockito 的 when-thenAnswer 方法可以让你在测试中方便地模拟对象和类,使得单元测试更加简单和高效。这句话的意思是:当 mockObject.method(argument) 被调用时,返回一个给定的值。这句话的意思是:当 mockedList.get(0) 被调用时,返回 "first"。

2024-01-02 10:45:29 570

原创 Tomcat实现WebSocket即时通讯 & Java实现WebSocket的两种方式

HTTP协议是“请求-响应”模式,浏览器必须先发请求给服务器,服务器才会响应该请求。即服务器不会主动发送数据给浏览器。但它们实时性不高,频繁请求也会给服务器巨大压力,也浪费网络流量和带宽。于是HTML5推出WebSocket标准,使得浏览器和服务器之间任一方都可主动发消息给对方,这样服务器有新数据时可主动推给浏览器。

2023-11-22 08:55:17 911

原创 Redis实战之Redisson使用技巧详解

什么是 Redisson?来自于官网上的描述内容如下!Redisson 是一个在 Redis 的基础上实现的 Java 驻内存数据网格客户端(In-Memory Data Grid)。它不仅提供了一系列的 redis 常用数据结构命令服务,还提供了许多分布式服务,例如分布式锁、分布式对象、分布式集合、分布式远程服务、分布式调度任务服务等等。相比于 Jedis、Lettuce 等基于 redis 命令封装的客户端,Redisson 提供的功能更加高端和抽象,逼格高!

2023-11-09 14:26:02 399

原创 SpringBoot 使用WebSocket打造在线聊天室

在WebSocket API中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。2、浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。3、当你获取 Web Socket 连接后,你可以通过 send() 方法来向服务器发送数据,并通过 onmessage 事件来接收服务器返回的数据。添加 WebSocketConfig 配置。

2023-11-08 13:57:36 639

原创 Google Guava Cache LoadingCache 基本使用

如果认为缓存数据总是在固定时候后变得陈旧不可用,这种回收方式是可取的,再次加载key,调用CacheLoader的load方法。缺点:当数据到达失效时间时,会先返回上次的value,当reload完成后再会返回实时的数据,数据实时性低于load。缓存项在给定时间内没有被写访问(创建或覆盖),则刷新,再次加载key,调用CacheLoader的reload方法。缓存项在给定时间内没有被读/写访问,则刷新,再次加载key,调用CacheLoader的reload方法。内访问数据会使用load加载数据。

2023-11-07 10:29:48 1409

原创 Java中 创建不可变集合

List.of 和 Arrays.asList 都不允许add和remove元素,但 Arrays.asList 可以调用set更改值,而 List.of 不可以,会报 java.lang.UnsupportedOperationException 异常。Java 9中推出 List.of 创建的是不可变集合,而 Arrays.asList 是可变集合。看到这里,可能有的人会问了,之前不是对于集合有asXxx这样的方便方法了么?// 不可变的List。// 不可变的Set。与asList的区别。

2023-10-12 12:06:19 609

原创 java stream中Collectors的用法

在java stream中,我们通常需要将处理后的stream转换成集合类,这个时候就需要用到stream.collect方法。collect方法需要传入一个Collector类型,要实现Collector还是很麻烦的,需要实现好几个接口。于是java提供了更简单的Collectors工具类来方便我们构建Collector。Collectors是包下的一个工具类,其中各个方法的返回值可以作为的入参,实现对队列的各种操作,包括:分组、聚合等。

2023-10-12 09:31:14 172

原创 java8 stream reduce方法实现归约操作 和SUM的区别介绍

操作产生一个新的流,它仅包含所需的元素(如长度小于某个阈值的字符串)。最后,通过终止操作从流中生成单个值(如长度的总和或均值)。操作将一种类型的流转换为另一种类型(如通过调用。,用户希望通过流操作生成单一值,使用。Java 的函数式范式经常采用“方法对每个元素进行累加计算。

2023-10-12 08:54:46 238

原创 蓝牙网关如何连接MQTT服务器

如果我们觉得相同的数据太多了,可以用节点心跳功能,该功能就是相同的数据只发送心跳,比如蓝牙终端设备广播温度是21度,我们设置节点心跳是10s,那么如果温度保持在21度,mqtt消息是10s发布一次,如果温度突然变换22度,那么蓝牙网关立即推送消息到mqtt上,我们这里设置节点心跳10s。配置完后点击配置网关,网关自动重启后就可以将数据发送mqtt服务器上了,可以用mqttfx来查看一下。最后我们需要配置广播内容的字段到json结构中。

2023-09-15 11:35:28 395

原创 Nginx 相关介绍(Nginx是什么?能干嘛?)

没有听过Nginx?那么一定听过它的"同行"Apache吧!Nginx同Apache一样都是一种WEB服务器,基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator)URL作为沟通依据,通过HTTP协议提供各种网络服务。然而,这些服务器在设计之初受到当时环境的局限,例如当时的用户规模,网络带宽,产品特点等局限并且各自的定位和发展都不尽相同。这也使得各个WEB服务器有着各自鲜明的特点。

2023-09-13 18:05:04 148

原创 使用 Google Cloud Run 在 GCP 上部署 React 应用

所以你已经创建了你的第一个 React 项目,现在你准备好尝试部署它了吗?不要害怕,Google 提供了 Cloud Run,这是一个非常简单但功能强大的工具,可以帮助您做到这一点。我将通过三个简单的步骤向您展示如何使用 Cloud Run 部署容器化的 React 应用程序。本教程假设您已经设置了您的 Google Cloud 项目并让您的 React 应用程序在本地运行。

2023-09-13 17:40:03 497

原创 TypeScript 中的 any、unknown、never 和 void

unknown 则是类型更安全的 any,同样可以将任何类型赋给它,但不能执行任何操作,必须用类型断言来显示说明类型才能去执行操作。never 是无法观测的类型,比如不会执行完的函数的返回值,合并结果不存在的交叉类型。和 any 一样,unknown 也是任何类型的子类型,所有类型都可以传给 unknown,包括 any。any 是任意类型,具有所有类型的行为,可被执行,可访问属性,超脱于类型系统之外。它可以表示任何类型,并使用它们的语法,就像写没有类型的原生 JS 一样。使用 never 的一些场景。

2023-09-13 09:40:02 121

原创 Mac node nvm 切换版本,指定版本

nvm是node版本管理工具,为解决node各版本不兼容问题,nvm是让你在同一台机器上安装和切换不同版本的node。nvm install 版本号 // 下载指定node版本,如nvm install v11.14.0。nvm alias default // 设置默认版本,每次启动终端都使用该版本。nvm ls-remote // 查看所有的node可用版本。nvm list // 查看已安装node版本。nvm use 版本号 // 使用指定版本。// Homebrew安装。

2023-09-12 14:16:04 852

原创 git---更新gitignore文件,使之生效

会忽略掉 doc/ 里面所有的txt文件,包括子目录下的(**/ 从 Git 1.8.2 之后开始支持 **/ 匹配模式,表示递归匹配子目录下的文件)# 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt。# 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO。# 忽略 build/ 目录下的所有文件。# 此为注释 – 将被 Git 忽略。简单的.gitignore示例。# 忽略所有 .a 结尾的文件。# 但 lib.a 除外。

2023-09-05 17:54:02 1216

原创 JavaScript 中的 Var、Let 和 Const 有什么区别

ES2015(ES6)推出了许多闪亮的新功能。从 2020 年开始,我们假设许多 JavaScript 开发人员已经熟悉并开始使用这些功能。尽管这个假设可能部分正确,但是其中某些功能可能对一些开发人员来说仍然是个谜。ES6 附带的功能之一是添加了let和const,可用于变量声明。问题是,它们与var有何不同?如果你仍然不清楚-那么读完本文你就知道了 😂。在本文中,我们将讨论varlet和const的作用域、用途和变量提升。当你阅读时,请注意我将指出的它们之间的差异。

2023-09-05 09:00:53 269

原创 跨源资源共享(CORS)Access-Control-Allow-Origin

好啦,jsonp的原理:通过script标签引入一个js文件,这个js文件载入成功后会执行我们在url参数中指定的函数,并且会把我们需要的json数据作为参数传入,有种回调的味道!服务器:诶,你是谁,我来看看你的origin,嗯嗯,可以,符合我的要求,放行!没错,就是这家伙干的,浏览器只允许请求当前域的资源,而对其他域的资源表示不信任。,标识允许哪个域的请求。,浏览器也不会理,并且即使有目标站点的cookies,浏览器也不会发送。返回的是满足服务器要求的所有请求方式,请求头,不限于该次请求,

2023-09-04 17:00:34 472

原创 在 Node.js 中使用 MongoDB 事务

在 MongoDB 中,对单个文档的操作是原子的。由于您可以使用嵌入的文档和数组来捕获单个文档结构中的数据之间的关系,而不是跨多个文档和集合进行规范化,因此这种单一文档的原子性消除了对多文档的需求许多实际用例的事务。对于需要对多个文档(在单个或多个集合中)进行读取和写入原子化的情况,MongoDB 支持多文档事务。对于分布式事务,事务可用于多个操作、集合、数据库、文档和分片。

2023-09-04 16:46:52 977

原创 Mongoose populate实现多表关联存储与查询

和普通的属性不同的是,我们需要指定引用属性的类型和引用的模型名称。mongodb不是传统的关系型数据库,我们可以使用monogoose方便的将多个表关联起来,实现一对多、多对多的数据表存储和查询功能。我们创建一个Person模型和一个Story模型,其中一个Person对应多个Story,也就是典型的一对多关系。创建一个名为xiaoming的Person对象,然后再创建一个Story,并使其引用Person._id属性。这里有一个不符合常理的地方,就是我在这里把故事的作者设为了故事的粉丝~~

2023-09-04 16:41:44 483

原创 MongoServerError: Transaction numbers are only allowed on a replica set member or mongos 事务解决

【代码】MongoServerError: Transaction numbers are only allowed on a replica set member or mongos 事务解决。

2023-09-04 16:39:46 1018

原创 编写中间件以用于 Express 应用程序

中间件函数能够访问请求对象req)、响应对象res) 以及应用程序的请求/响应循环中的下一个中间件函数。下一个中间件函数通常由名为next的变量来表示。执行任何代码。对请求和响应对象进行更改。结束请求/响应循环。调用堆栈中的下一个中间件。如果当前中间件函数没有结束请求/响应循环,那么它必须调用next(),以将控制权传递给下一个中间件函数。否则,请求将保持挂起状态。以下示例显示中间件函数调用的元素:中间件函数适用的 HTTP 方法。中间件函数适用的路径(路由)。中间件函数。

2023-09-03 09:11:53 497

原创 React: 组件介绍 Components

A。

2023-08-31 19:22:03 929

原创 Node.js 中间件是怎样工作的?

中间件在字面上的意思是你在软件的一层和另一层中间放置的任何东西。Express 中间件是在对 Express 服务器请求的生命周期内所执行的函数。每个中间件都可以访问其被附加到的所有路由的 HTTP 请求和响应。另外,中间件可以终止 HTTP 请求,也可以用 next 将其传递给另一个中间件函数。中间件的这种“链”使你可以对代码进行划分并创建可重用的中间件。

2023-08-31 19:20:08 611

原创 解决 Error: error:0308010C:digital envelope routines::unsupported

【代码】解决 Error: error:0308010C:digital envelope routines::unsupported。

2023-08-28 13:50:16 97

原创 MERN Stack 教程

​TheMERN stackis a web development framework made up of the stack of MongoDB, Express.js, React.js, and Nodejs. It is one of the several variants of theMEAN stack.​

2023-08-27 13:28:01 152 1

原创 一篇带你了解npm的原理

npm init初始化新项目统一项目配置:需要团队共享npm config配置项,固化到.npmrc文件中统一运行环境:统一package.json,统一package-lock.json文件。合理使用多样化的源安装依赖包使用npm版本:>= 5.2版本使用npm scripts和npx管理相应脚本安全漏洞检查:npm audit fix修复安全漏洞的依赖包(本质:自动更新到兼容的安全版本)一篇带你了解npm的原理-npm 使用。

2023-08-27 13:11:06 316

原创 React Hooks 全解:零基础入门

上面是官方解释。从中可以看出 Hooks 是函数,有多个种类,每个 Hook 都为提供使用 React 状态和生命周期特性的通道。Hooks 不能在中使用。React 提供了一些预定义好的 Hooks 供我们使用,下面我们来详细了解一下。

2023-08-26 18:35:07 926

原创 npm 创建 node.js 项目

package.json是创建任何node.js项目必须要有的一个文件。因为在package.json文件中,有详细的项目描述,包括:(1)项目名称:name(2)版本:version(3)依赖文件:dependencies 等等..

2023-08-26 16:22:54 1735

原创 第一个react应用程序并添加样式

若要为创建的某个元素增加 class 属性,不能直接定义 class 而要用 className,因为 class 是 javascript 中的保留字。欢迎进入React的世界,欢迎进入React的世界,欢迎进入React的世界,欢迎进入React的世界,

2023-08-26 14:35:47 695

原创 使用create-react-app创建react项目

├── package-lock.json 锁定安装时的包的版本号,保证团队的依赖能保证一致。├── node_modules 所有的依赖安装的目录。$ npx create-react-app your-app 也可以实现相同的效果。$ create-react-app your-app 注意命名方式。使用create-react-app创建一个项目。全局安装create-react-app。代码的入口是项目目录下的index.js。

2023-08-26 14:27:42 482

原创 AndroidStudio升级后总是Read Time Out的解决办法

AndroidStudio升级后在gradle的时候总是Time out,遇到过多次,总结一下解决办法。

2023-08-23 13:48:43 2290

原创 Unable to load class ‘org.gradle.api.publication.maven.internal.MavenPomMetaInfoProvider‘

Downgrade your gradle version to 6.7.1.

2023-08-23 13:43:40 1650

原创 Java与Android开发入门

Activity是Android系统提供的一个活动基类,我们项目中所有的活动都必须继承它或者它的子类才能拥有活动的特性(AppCompatActivity是Activity的子类)Activity是用户界面的基本组件。这是你整个Android项目的配置文件,你在程序中定义的所有四大组件都需要在这个文件里注册,另外还可以在这个文件中给应用程序添加权限声明。对MainActivity这个活动进行注册,表示MainActivity是这个项目的主活动,在手机上点击应用图标,首先启动的就是这个活动。

2023-08-23 12:01:33 129

原创 什么是 BLE 网关?

Ble网关是一种低功耗设备,可在附近将智能设备连接至基于蓝牙的产品. 它使人们能够将信息从蓝牙设备传输到云. 这些设备可以是传感器或Ble信标. 使用时, 传输数据时无需更改任何内容.使用这个装置, 您可以将基于蓝牙的产品连接到扬声器等外部硬件. 例如, 您可以在办公室内安装Ble网关,以便在电话响起且不在身边时通过便携式扬声器接收通知或接听电话.为一个上班, 您需要将支持蓝牙的小工具连接或配对. 通过这种配对,网关可以将数据从连接的设备传输到云.

2023-08-15 11:44:09 499

原创 app.use(express.json()) 使用

快速托管静态资源的内置中间件,例如: HTML 文件、图片、内置了 3 个常用的中间件,极大的提高了。中间件,解析表单中的。项目的开发效率和体验。

2023-08-13 18:54:49 1009

原创 Express 实战(一):概览

Express 是一个基于 Node.js 封装的上层服务框架,它提供了更简洁的 API 更实用的新功能。它通过中间件和路由让程序的组织管理变的更加容易;它提供了丰富的 HTTP 工具;它让动态视图的渲染变的更加容易;它还定义了一组可拓展标准。

2023-08-13 18:15:14 373

原创 JavaScript、TypeScript、ES5、ES6之间的联系和区别

ECMAScript 6.0(以下简称ES6)是JavaScript语言(现在是遵循ES5标准)的下一代标准,已经在2015年6月正式发布了。总之,ECMAScript和JavaScript的关系是,前者是后者的规格(语言规范),后者是前者的一种实现。TypeScript是Javascript的超集,实现以面向对象编程的方式使用Javascript。typescript相对于ES6,TypeScript最大的改善是增加了类型系统。ES6是Javascript语言的标准,typescript是ES6的超集。

2023-08-11 14:26:00 1575

jasper-compiler.jar包下载

jasper-compiler.jar包下载

2010-12-15

jasper-runtime.jar包下载

jasper-runtime.jar包下载

2010-12-15

SourceInsight. 源码阅读器汉化版

SourceInsight. 源码阅读器汉化版

2010-11-16

Java基础和J2ee的SSH2.doc

Java基础和 J2ee的SSH .

2010-11-16

(公司ssh培训教材)Spring+Stucts+Hibernate.pdf

(公司ssh培训教材)Spring+Stucts+Hibernate

2010-11-16

axis-schema.jar 包

axis-schema.jar 包 ..

2010-11-16

commons-net-2.0-sources.jar 包

commons-net-2.0-sources.jar 包

2010-11-16

commons-net-2.0-javadoc.jar 包

commons-net-2.0-javadoc.jar 包

2010-11-16

commons-net-2.0.jar 包

commons-net-2.0.jar 包

2010-11-16

commons-net-ftp-2.0.jar 包

commons-net-ftp-2.0.jar 包

2010-11-16

commons-logging-1.1

commons-logging-1.1 ..

2010-11-16

junit-4.8.1-src.jar 包

junit-4.8.1-src.jar 包

2010-11-16

commons-logging-adapters-1.1.jar包

commons-logging-adapters-1.1.jar包

2010-11-16

commons-logging-api-1.1.jar包

commons-logging-api-1.1.jar 包

2010-11-16

commons-logging-1.1.jar包

commons-logging-1.1.jar 包

2010-11-16

org.springframework.test-3.0.0.M3.jar包

org.springframework.test-3.0.0.M3.jar 包

2010-11-16

junit4.8.1.zip

junit4.8.1 Jar文件

2010-11-16

RandomGUID.tar

org.doomdark.uuid RandomGUID.tar,

2010-11-16

《tomcat权威指南》 英文版

《tomcat权威指南》 英文版

2009-04-30

TCP IP协议与网络编程 任泰明

TCP IP协议与网络编程 任泰明 PPT 免费下载~~

2009-04-30

php中文教程 .

php中文教程 ~ php中文 教程..

2009-04-29

NRPE nagios 文档

NRPE nagios 文档 免费下载~~

2009-04-29

Nagios配置学习手记-续-完整版

Nagios配置学习手记- 续-完整版 免费下载~~

2009-04-29

nagios-2.5 网络资源监视系统

nagios-2.5 网络资源监视系统

2009-04-29

Rational.ClearQuest.使用手册

Rational.ClearQuest.使用手册 ~

2009-04-29

windows脚本技术

windows 脚本技术 ~

2009-04-29

XML 指南 帮助手册

XML 指南 帮助手册

2009-04-29

eclipse帮助文档

eclipse~~~ 帮助文档

2009-04-29

PowerDesigner使用教程

利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型

2009-04-24

MyEclipse 6 Java 开发中文教程

MyEclipse 6 Java 开发中文教程 免费下载~~

2009-04-24

MySQL 5.1参考手册

MySQL 5.1 中文 参考手册

2009-04-24

sql命令 详细手册

sql命令~~ 工具书 帮助手册

2009-04-24

tomcat5.5中文手册

tomcat5.5中文手册~~ 很好的参考手册

2009-04-24

rational rose license key 2003

运行rational rose 把license Key导入即可正常运行

2009-04-18

编译原理 课件及习题答案

编译原理 ~~~课件及习题答案~~~~ 习题答案 ,PPT 免费下载~~

2009-02-02

计算机网络课件及答案 谢希仁第五版

计算机网络课件及答案 谢希仁第五版 精品教程系列 课后习题答案 免费下载~~

2009-02-02

北大计算机考研+高等数学真题解答

北大计算机考研+高等数学真题解答 历年真题解答

2009-02-02

收集的几个论坛源码 bbs

比较详细的源码~~收集的几个论坛源码 bbs 免费下载~~

2009-02-02

ITAT 的JAVA 竞赛试题

ITAT教育工程是全国“信息技术及应用培训”教育工程(Information Technology Application Training)的缩写,是教育部教育管理信息中心于2000年5月26日启动的一项面向全国的普及型实用信息技术人才培养工程

2009-02-02

国家标准-软件文档 写文档必备

必备~~~~~~写文档的国家标准~~~~~~~~~~~~

2008-09-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除