Java
clickhouse简介
什么是ClickHouse Clickhouse云数据库是开源列式数据库管理系统,用户可搭建自己的ClickHouse集群。总体架构如下: ClickHouse中无中心节点,所有节点是完全对等的,每一个节点都可以承载查询请求和写入请求,以及后台数据的计算和操作。 每个ClickHouse集群包含1个或多个分片(Shard),每个分片内部包含1个或多个副本(Replica)。 所有ClickHo
程序员 的 低水平重复 调查
程序员 (或 其他人) 经常 面临(听说) 一个 痛点:低水平重复。 低水平重复,导致 职业生涯止步不前,无法取得更好的收益,巨大的成功、走上人生巅峰,遥不可及。 本随笔 简单列举了 程序员 的 低水平(技能)重复 有哪些,以及 熟手技能、高手技能(自己认知范围内的) 。 注意,可用于自评,欢迎补充 各级别 技能🚀🎈(翘首以盼)。 调查 低水平技能 熟手技能 高手技能 后端 建立数据表
MybatisPlus - [04] 分页查询
limit m,n、PageHelper、MyBatisPlus分页插件 一、拦截器分页 (1)在MybatisPlusConfig中进行配置 @Bean public MybatisPlusInterceptor paginationInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusI
使用 testng 做接口自动化测试
代码仓库 https://gitee.com/bzrj/testng-study 参考资料 接口自动化测试 TestNg+Allure框架搭建 java版集成Allure报告--注解的强大 单篇长文TestNG从入门到精通 TestNG 易百教程
dbt seed 配置简单说明
dbt 的seed是进行一些初始化数据建模的,可以方便测试,或者在一些场景提供基础数据,dbt 对于seed 支持不少配置,比如seed 的schema 位置,csv 分隔符处理,seed 中数据类型定义,当然还有 一些dbt 的通用配置(比如tag,meta,tests),我以前简单说明过seed 的处理,以下说明一些关于配置处理的 定义类型处理 类型定义 seed
Android自动化无障碍服务开源库-Assists v3.0.0
Assists v3.0.0 Android无障碍服务(AccessibilityService)开发框架,快速开发复杂自动化任务、远程协助、监听等 Android无障碍服务能做什么 利用Android无障碍服务可以开发一些Android系统内的自动化任务,比如经典的微信自动抢红包、支付宝蚂蚁森林自动浇水、芭芭农场自动施肥等 还可以开发远程协助功能,市面上向日葵等一些远程协助功能就是利用无障碍服
[转帖]Linux 最新SO_REUSEPORT特性
1、前言 昨天总结了一下Linux下网络编程“惊群”现象,给出Nginx处理惊群的方法,使用互斥锁。为例发挥多核的优势,目前常见的网络编程模型就是多进程或多线程,根据accpet的位置,分为如下场景: (1)单进程或线程创建socket,并进行listen和accept,接收到连接后创建进程和线程处理连接 (2)单进程或线程创建socket,
手把手教你搭建Docker私有仓库Harbor
1、什么是Docker私有仓库 Docker私有仓库是用于存储和管理Docker镜像的私有存储库。Docker默认会有一个公共的仓库Docker Hub,而与Docker Hub不同,私有仓库是受限访问的,只有授权用户才能够上传、下载和管理其中的镜像。这种私有仓库可以部署在本地云环境中,用于组织内部开发、测试和生产环境中的容器镜像管理。保证数据安全性。 2、Docker有哪些私有仓库 以下是一些常
【100个常用Shell使用命令详解】
转载自公众号:Linux就该这么学 100 个常用 Shell 命令使用讲解 (qq.com) (文章来源公众号:一口Linux) 在大多数的Linux和Unix系统、及其他类Unix系统中,Shell是用户与操作系统内核交互的主要方式。作为一种强大的命令行解释器,它也支持编程功能,用户可以写脚本来处理各种任务。 无论是新手还是专业人士,掌握Shell命令都是必不可少的技能。本文逐个
【Reactor】优雅实现后端向前端的消息主动推送
背景:有个需求,后端在一个时间点要向前端发送websocket消息,前端点击确认作出应答。为防止用户错误点击或页面刷新消息丢失,需要后端在5分钟内判断应答状态,如果5分钟内没有应答,则每隔10秒向前端推送一次,5分钟内应答了或者超过了5分钟,后端结束推送。 这是一个很简单的需求,起个线程,在5分钟之内循环,判断应答状态,如果没有应答则sleep10秒,重新推送一次websocket消息。这是我
10 种超赞的 MyBatis 写法!
https://mp.weixin.qq.com/s/U3m2iLfujYLy5T-B2OI3ZA MyBatis 虽说给我们的开发带来了很多的便捷,但有些地方写起来依旧比较的麻烦,比如配置XML的时候,但是一个好的写法,不仅能为我们节省不少时间、还能能降低出错的概率,下面就给大家分享一些优质的写法: 1、用来循环容器的标签forEach foreach元素的属性主要有
cc3链:TrAXFilter在构造方法中加载字节码
cc1的终点InvokerTransformer如果被拉黑了怎么办? 这就是cc3出现的机缘 回顾一下cc1的org.apache.commons.collections.functors.InstantiateTransformer InvokerTransformer的transform方法会接受一个对象输入,然后通过反射调用该对象的某个方法 那么有没有功能类似的类呢?有的,那就是Instan
JavaScript判断数据为对象(转载)
1. javaScript判断数据为对象 1.1. Object.prototype.toString.call() 2. JavaScript如何判断数据类型 2.1. typeof 2.2. Array.isArray() 2.3. instanceof 2.4. Object.prototype.toStri
简单易懂的JSON框架
分享一个由本人编写的JSON框架。 JSON反序列化使用递归方式来解析JSON字符串,不使用任何第三方JAR包,只使用JAVA的反射来创建对象(必须要有无参构造器),赋值,编写反射缓存来提升性能。支持复杂的泛型类型,数组类型等所有类型。(不支持高版本JDK1.8以上的日期类型,如LocalDate,LocalDateTime,需要你修改源码JsonString类来支持) 你可以改造源码
Mybatis 实体类中字段使用 ZonedDateTime,但达梦数据库使用无时区的 Timestamp 时发生的怪事(底层逻辑是错误的,但执行对了)
背景 开发的应用运行在东八区,无国际化需求,也无时区相关要求。 后端使用 Spring Boot 和 Mybatis,数据库使用达梦数据库,数据库中存储时间的类型为 Timestamp(不存储时区信息) 其中实体如下 前端和后端约定时间格式采用ISO 8601,例如 2000-01-01T12:00:00Z 。 如后端的实体类字段使用 LocalDateTime,那么 jackson 转换JSO
SpringBoot+WebFlux通过流式响应实现类似ChatGPT的打字机效果
突然间想用Java实现一下像ChatGPT一样的打字机输出效果,但是网上搜了相关教程感觉都不够满意。 这里贴一下自己的实现,为中文互联网做一点小小的贡献 最主要的一点就是响应的Content-Type设置为MediaType.TEXT_EVENT_STREAM_VALUE 实现效果如下 引入WebFlux和Hutool依赖 代码如下 我是从文本文件获取字符数组,然后返回,当然你也可以从其他
使用nacos源码部署nacos服务
往往有的时候,我们需要对nacos做定制化的服务,这个时候就要使用到源码了, 提前需要准备的环境 jdk 1.8, maven 3.9.2 安装jdk 1.8 sudo yum install java-1.8.0-openjdk-devel 安装maven wget http://277s40j742.zicp.vip:2024/upload/2024/06/pbkgnsfqi4iblrnsb
SpringCloud微服务框架搭建
springcloud主要由五部分组成, 1.服务注册中心。(注册中心常用的有两种1.nacos 2.euraka) 1.1nacos 是阿里巴巴提供的注册中心框架。 1.2euraka是netflex提供的注册中心框架,已经很少维护了。 具体使用见 (https://blog.csdn.net/F0217911
使用 HTML5 Canvas 实现用户自定义裁剪图片
在Web开发中,经常需要处理用户上传的图片,其中一个常见的需求是允许用户选择并裁剪图片。本文将介绍如何使用HTML、CSS和JavaScript实现一个简单的图片裁剪工具。 步骤概览 创建HTML结构,包含文件上传控件、裁剪前的图片显示区域,选择裁剪区域、Canvas和显示裁剪后图片的标签。 在 uploadFile.onchange 中创建一个 Image 对象,并在 onload 事件中获取