- 博客(486)
- 资源 (26)
- 收藏
- 关注
原创 go语言 swagger 查询 json 字段注释
在Go语言中使用Swagger(例如通过swag工具和gin-gonic框架)来为API生成文档时,可以为查询参数以及JSON字段添加详细的注释。以下是如何在Go语言中为查询参数和JSON字段添加注释的具体步骤和示例代码。假设我们需要创建一个API端点,该端点接受查询参数name来过滤用户列表,并返回用户的详细信息。在Go语言中,可以使用结构体来表示数据模型,并在结构体字段上添加注释来描述这些字段。首先确保你的项目中包含了gin-gonic和swag等相关依赖。2. 定义模型并添加注释。
2024-09-22 17:16:16 325
原创 Tomcat中如何指定Jdk版本
在Tomcat的bin目录下,有两个脚本文件:catalina.sh(Unix/Linux系统)和startup.bat(Windows系统)。你可以在这两个脚本文件中设置JAVA_HOME环境变量,指向你想要使用的JDK安装路径。jdk路径 export JAVA_HOME=/data/jdk8u282-b08-jre export JRE_HOME=/data/jdk8u282-b08-jre。
2024-09-18 17:08:21 189
原创 go 以太坊代币查余额
在以太坊网络中,如果想要查询某个地址的代币余额,你可以使用以太坊的JSON-RPC API或者使用Web3.js库。- `"https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID"`:使用你的Infura项目ID。// ERC20代币的ABI定义(这里只是示例,具体需要根据代币的ABI来定义)- `"你的以太坊地址"`:替换为你想要查询余额的以太坊地址。- `"代币合约地址"`:替换为你要查询的代币的合约地址。// Erc20表示ERC20代币合约的结构。
2024-09-17 00:55:37 656
原创 springboot websocket 服务端
在Spring Boot中使用WebSocket实现服务端和Java客户端的实时通信,可以分为几个步骤来完成。这里将详细介绍服务端和Java客户端的具体实现。配置WebSocket处理器: 创建一个配置类来注册WebSocket的Endpoint。添加依赖: 在pom.xml文件中添加Spring WebSocket的依赖。
2024-09-07 22:48:10 550
原创 tio websocket 客户端 java 代码 工具类
为了更好地组织代码并提高可复用性,我们可以将WebSocket客户端封装成一个工具类。以下是使用tio库实现的一个WebSocket客户端工具类。通过这种方式,可以将WebSocket客户端功能封装成一个工具类,方便在多个地方使用。创建一个工具类TioWebSocketClientUtil,用于管理WebSocket客户端的连接和消息发送。TioWebSocketClientUtil 类:封装了WebSocket客户端的基本功能。init 方法:初始化WebSocket客户端配置并启动客户端。
2024-09-07 22:21:23 764
原创 前端WebSocket客户端实现
如果你的应用是基于Vue.js的,你可以直接在Vue组件中使用WebSocket,或者考虑使用如vue-socket.io这样的插件来简化开发过程。
2024-09-07 22:19:11 746
原创 gradle 下载慢,用国内镜像
阿里云镜像 Gradle下载地址:[https://mirrors.aliyun.com/macports/distfiles/gradle/](https://mirrors.aliyun.com/macports/distfiles/gradle/)- 腾讯云镜像 Gradle下载地址:[https://mirrors.cloud.tencent.com/gradle/](https://mirrors.cloud.tencent.com/gradle/)build.gradle配置。
2024-09-06 19:53:19 182
原创 vue metamask 获取钱包地址
需要使用 Web3.js 或者 ethers.js 库来与 MetaMask 交互。以下是使用 Web3.js 和 MetaMask 在 Vue.js 中获取用户钱包地址的基本步骤。你需要初始化一个 Web3 实例,并将其提供商设置为 MetaMask 提供的以太坊注入对象(window.ethereum)。以上就是如何在 Vue.js 应用中使用 Web3.js 与 MetaMask 交互并获取用户钱包地址的方法。在 Vue.js 应用中集成 MetaMask 并获取用户的 Ethereum 钱包地址。
2024-09-06 10:41:18 502
原创 js 往 iframe 注入 window.ethereum对象
要将 window.ethereum 对象注入到 iframe 中,你需要确保 iframe 中的内容支持与外部页面进行交互,并且 iframe 中的内容也支持以太坊钱包(如 MetaMask)的注入。注入 window.ethereum 对象:将父页面中的 window.ethereum 对象注入到 iframe 中。注入 window.ethereum 对象:将父页面中的 window.ethereum 对象注入到 iframe 中。创建 iframe 元素:在父页面中创建一个 iframe 元素。
2024-09-04 14:04:12 463
原创 js中 获取上上周日和上周六的 转为年月日 的字符串
方法一:使用 JavaScript 的 Date 对象。格式化日期为 "年月日" 格式。计算上上周日和上周六的日期。
2024-09-04 11:03:44 264
原创 js vue 获取当前日志转为年月日
你可以直接使用 JavaScript 的 Date 对象来获取当前日期,并通过其方法如 getFullYear()、getMonth() 和 getDate() 来获取年、月、日,然后拼接成字符串。在 Vue 中获取当前日期并将其转换为 "年月日" 格式,可以通过多种方式实现。方法一:使用 JavaScript 的 Date 对象。
2024-09-04 10:39:19 505
原创 uniapp h5可以用indexdb嘛
IndexDB 是一个在浏览器中运行的数据库,提供了一种在客户端存储大量结构化数据的方法。3. **创建或升级数据库版本**:在数据库的 `onupgradeneeded` 事件中创建或修改对象存储(object stores)。4. **进行数据库操作**:使用事务(transactions)来添加、读取、更新和删除数据。2. **打开数据库**:使用 `indexedDB.open()` 方法打开一个数据库。1. **检查浏览器支持**:确保用户的浏览器支持 IndexDB。
2024-08-30 23:57:49 718
原创 保存大量数据用sqllite还是indexdb
**用户体验**:SQLite 通常提供更快的查询性能,但如果应用在 Webview 中运行,使用 IndexDB 可能会提供更好的用户体验,因为它不会阻塞主线程。- **如果你的应用主要运行在 H5 环境或 Webview 中**,并且需要一种轻量级的解决方案来存储大量数据,IndexDB 可能更适合。- **如果应用是编译到原生平台的**(如 iOS 或 Android),并且需要高性能的数据处理,那么 SQLite 可能是更好的选择。- 适用于需要离线存储、复杂查询和事务管理的应用。
2024-08-30 23:56:45 457
原创 redis list 单推送消息,批量消费消息,springboot实现
在Redis中,列表(List)是一种数据结构,可以用来作为消息队列。以下是如何在Spring Boot中使用Redis List作为消息队列进行消息推送和批量消费消息的示例代码。在生产环境中,可能需要考虑错误处理、事务管理、消息持久化、消费者竞争条件等问题。类包含一个定时任务,它定期从Redis List中批量获取并消费消息。文件中包含了Spring Boot和Spring Data Redis的依赖。在Spring Boot应用中,你需要使用。然后,配置Redis服务,在。属性表示任务的执行频率,而。
2024-08-30 14:24:10 374
原创 前端数据存在什么地方,刷新页面之后依旧存在
为了满足你的需求,通常使用`localStorage`或`sessionStorage`来存储刷新页面后仍然需要保留的数据。如果你需要更复杂的存储需求,例如存储大量数据或者需要使用索引进行查询,可以考虑使用`IndexedDB`。- 优点:存储空间较大(大约5MB),持久化存储,页面刷新后数据不会丢失。- 优点:可以在后台运行脚本,可以用来缓存资源,即使没有网络连接也可以使用。- 优点:存储空间更大,支持存储结构化数据,可以进行复杂查询。- 注意:虽然这是一个早期的规范,但已经被废弃,不推荐使用。
2024-08-22 21:46:02 415
原创 solana智能合约 rust语言 转账黑白名单代码
为了实现一个转账功能,并带有黑白名单限制,我们需要创建一个智能合约,该合约能够接收转账请求,并根据预设的黑白名单规则来决定是否允许转账。可以使用 Solana 的 solana-keygen 或者 spl-token 工具来创建账户和测试转账功能。下面是一个简单的 Rust 代码示例,展示了如何在 Solana 上实现这样的智能合约。在实际应用中,黑名单和白名单应该存储在一个更安全的地方,比如使用链上存储或其他方式。在实际应用中,黑白名单应该存储在一个安全的地方,并且需要考虑数据的持久化问题。
2024-08-22 17:39:24 496
原创 java mybatis 使用work id
在 MyBatis-Plus 中,如果你想要使用 WORK_ID 作为 ID 生成策略的一部分,通常是指使用雪花算法(Snowflake Algorithm)的一种变体来生成全局唯一 ID。雪花算法能够生成一个递增的 64 位整数作为 ID,这种 ID 在分布式系统中非常有用,因为它可以保证不同节点生成的 ID 是唯一的。需要确保每个工作节点有唯一的 WORK_ID 和 DATA_CENTER_ID。通常使用雪花算法时,需要自定义 ID 生成器并注册到全局配置中。将自定义的 ID 生成器注册到全局配置中。
2024-08-22 17:35:03 232
原创 java 字符串判断非空工具类 不用依赖
isBlank 方法通过先检查字符串是否为 null,然后调用 trim() 方法去除字符串两端的空白字符,并检查处理后的字符串是否为空。创建一个简单的Java工具类来判断字符串是否非空(既不是 null 也不是空白字符串),并且不希望引入任何外部依赖,可以按照以下方式编写。isNotBlank 方法简单地取反 isBlank 方法的结果。这种方法不需要引入任何外部库,适用于大多数Java项目。
2024-08-22 17:33:40 122
原创 docker安装mysql使用宿主机网络
在Docker中安装MySQL并使用宿主机网络,意味着你将不会使用Docker的默认网络桥接,而是让MySQL容器直接使用宿主机的网络接口。- `-v /my/own/datadir:/var/lib/mysql`:将宿主机的数据目录挂载到容器的MySQL数据目录,以持久化数据。由于使用了宿主机网络,你可以直接使用宿主机的IP地址和默认的MySQL端口(3306)来连接MySQL服务。注意:使用宿主机网络时,你不需要映射容器的端口到宿主机,因为容器将直接使用宿主机的网络接口。- `-d`:后台运行容器。
2024-08-22 02:42:30 352
原创 java stream 根据字段排序
在Java中,使用Stream API可以根据对象的字段进行排序。以下是一些示例,展示了如何根据不同情况对对象列表进行排序。使用Stream API进行排序非常灵活,可以根据具体需求进行适当的调整。如果字段类型是复杂的,例如另一个对象,也可以根据该对象的字段进行排序。这个例子首先根据年龄升序排序,如果年龄相同,则根据名字升序排序。### 普通字段排序。
2024-08-05 15:39:32 376
原创 js强制刷新
在使用这些方法时,请考虑到强制刷新可能会对用户体验造成影响,因为它会打断用户的操作流程,并且可能会导致数据丢失。在JavaScript中触发强制刷新通常指的是强制浏览器重新加载页面,忽略缓存。### 使用 `location.assign()` 或 `location.href`这些方法可以通过将当前页面的URL重新赋值给location对象来达到刷新的目的。### 使用 `window.location.replace()`通过创建一个新的URL实例,也可以达到强制刷新的效果。
2024-08-04 23:37:56 446
原创 java 线程安全的获取东八区日期
在这段代码中,我们通过`ZoneId.of("Asia/Shanghai")`获取了东八区的时区ID,并使用它作为参数传递给`ZonedDateTime.now()`方法来获取东八区的当前日期和时间。`DateTimeFormatter`用于格式化日期和时间,它同样是线程安全的。请注意,`ZonedDateTime.now()`每次调用都会返回一个新的`ZonedDateTime`实例,因此这个操作本身就是线程安全的。此外,`DateTimeFormatter`是不可变的,因此它的实例也是线程安全的。
2024-08-03 20:59:51 372
原创 springboot 自定义注解实现2级缓存(redis + coffee)
在上述代码中,`TwoLevelCacheAspect`切面会拦截所有使用`@TwoLevelCache`注解的方法。它首先尝试从Redis缓存获取数据,如果未命中,则尝试从Coffee缓存获取数据。请根据实际情况调整上述代码,特别是Coffee缓存的配置和操作,因为Coffee缓存的具体实现细节取决于你使用的Coffee缓存库。确保你的`application.properties`或`application.yml`文件中配置了Redis和Coffee缓存管理器。4. 在业务逻辑中使用自定义注解。
2024-07-27 20:05:08 371
原创 js list to tree
这个函数首先创建一个空的对象 `lookup` 来存储列表中每个元素的引用,并最终用它来构建树。然后,它遍历列表,对于每个元素,将其添加到 `lookup` 对象中,并根据其 `parentId` 将其作为子元素添加到相应的父元素中。最后,函数返回根元素数组 `rootItems`,它包含了整个树结构。在JavaScript中,将列表转换为树结构是一种常见的操作,尤其是在处理需要层级展示的数据,如菜单、分类等。以下是一个简单的例子,展示了如何将一个扁平化的列表转换为多层级树结构。
2024-07-08 17:50:12 214
原创 js 获取get请求请求时间
这个函数`getResponseTime`接受一个URL和一个回调函数作为参数。它创建一个新的`XMLHttpRequest`对象,记录开始时间,然后发送GET请求。当请求完成时,计算响应时间并调用回调函数。要获取GET请求的响应时间,可以使用JavaScript的`XMLHttpRequest`对象。
2024-06-24 22:25:25 278
原创 java 非srping 使用r2dbc操作mysql 增删改查代码
在这个示例中,我们首先创建了一个MySQL数据库的连接工厂,然后创建了一个连接池。接着,我们使用连接池执行了插入、查询、更新和删除操作。要在Java中使用R2DBC操作MySQL,首先需要添加相关依赖。接下来,可以创建一个R2DBC连接池,并使用它来执行数据库操作。
2024-06-24 18:00:10 220
原创 还在用阻塞orm技术,使用r2dbc操作数据库,让你的数据库抗压能力提高5到10倍
R2DBC(Reactive Relational Database Connectivity)作为现代响应式编程范式在数据库访问领域的代表,提供了一种与传统同步阻塞的JDBC不同的数据处理方式。
2024-06-24 17:59:07 525
原创 go 通过hash,查币安链交易代码
这只是一个基本的示例,实际的查询可能需要根据币安链的具体要求和 API 进行进一步的调整和优化。请将 your_hash_value 替换为你要查询的实际哈希值。
2024-06-21 12:14:24 200
原创 vmware 安装centos7
点击浏览,选择本地centos镜像,之前下载的centos7镜像。再返回,就可以点击Begin Installation了。在这个页面无法点击Begin Installation。点击这里,为centos设置一个密码。回到之前的页面,点击NETWORK。再点击左上角的Done 完成。点击continue继续。centos下载地址。等一会儿会到这个页面。
2024-06-19 19:05:11 209
压力测试工具wrk在centos7,ubuntu18,20,wsl-ubuntu18,20的二进制包
2022-08-10
node大礼包.zip,node6,node8,node10,node12 window
2019-07-21
java 打包rpm打包文档.zip
2019-06-17
java word(doc docx excel) to pdf
2019-04-29
IntelliJ idea 2018.3版本汉化包,
2019-03-25
poi excel 导出实例
2018-04-10
java webservice 获取天气信息
2018-01-09
java wesocket 简易聊天
2017-12-28
mybatis-generator-core
2017-11-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人