摘要: 源自专栏《Java 原理用法示例 &&代码规范详解系列目录》欢迎关注、收藏 不错过最新干货文章 一、必看 类加载器是负责加载类的对象。ClassLoader类是一个抽象类。 给定类的二进制名称,类加载器应该尝试定位或生成构成该类定义的数据。典型的策略是将名称转换为文件名,然后从文件系统中读取该名称的 阅读全文
posted @ 2024-10-24 17:31 CharyGao 阅读(170) 评论(0) 推荐(0)
摘要: 源自专栏《Java 原理用法示例 &&代码规范详解系列目录》欢迎关注、收藏 不错过最新干货文章 1. 配置 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。 配置文档的顶层结构如下: configuration(配置) properties(属性) settings 阅读全文
posted @ 2024-10-24 17:29 CharyGao 阅读(422) 评论(0) 推荐(0)
摘要: 生命太短暂,不要去做一些根本没有人想要的东西。本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈、MyBatis、JVM、中间件等小而美的专栏供以免费学习。关注公众号【BAT的乌托邦】逐个击破,深入掌握, 前言 各位小伙伴大家好,我是A哥。最近遇到两个问 阅读全文
posted @ 2024-10-24 17:16 CharyGao 阅读(614) 评论(1) 推荐(0)
摘要: DockerHub是什么 Docker Hub是 Docker 提供的一项服务,用于与您的团队查找和共享容器映像。 它是世界上最大的容器映像存储库,其中包含一系列内容源,包括容器社区开发人员,开源项目和独立软件供应商(ISV),它们在容器中构建和分发其代码。 国内DockerHub镜像加速 Dock 阅读全文
posted @ 2024-10-24 16:46 CharyGao 阅读(2818) 评论(0) 推荐(0)
摘要: 一个完整的进程状态的变迁如下图: 再来详细说明一下进程的状态变迁: NULL -> 创建状态:一个新进程被创建时的第一个状态; 创建状态 -> 就绪状态:当进程被创建完成并初始化后,一切就绪准备运行时,变为就绪状态,这个过程是很快的; 就绪态 -> 运行状态:处于就绪状态的进程被操作系统的进程调度器 阅读全文
posted @ 2024-10-24 15:44 CharyGao 阅读(284) 评论(0) 推荐(0)
摘要: 1 前言 JPA(Java Persistence API)和MyBatis Plus是两种不同的持久化框架,它们具有不同的特点和适用场景。 JPA是Java官方的持久化规范,它提供了一种基于对象的编程模型,可以通过注解或XML配置来实现对象与数据库的映射关系。JPA的优点是可以对数据库进行更高级的 阅读全文
posted @ 2024-10-24 15:39 CharyGao 阅读(1357) 评论(0) 推荐(0)
摘要: 1.引言 前提:了解spring security oauth2的大致流程(对过滤器的内容有一定的了解) 主要思路: 首先用过期token访问受拦截资源 认证失败返回401的时候调用异常处理器 通过异常处理器结合refresh_token进行token的刷新 刷新成功则通过请求转发(request. 阅读全文
posted @ 2024-10-24 15:35 CharyGao 阅读(785) 评论(0) 推荐(0)
摘要: 1 异步@Async详解 1.1 引言 在java中异步线程很重要,比如在业务流处理时,需要通知硬件设备,发短信通知用户,或者需要上传一些图片资源到其他服务器这种耗时的操作,在主线程里处理会阻塞整理流程,而且我们也不需要等待处理结果之后再进行下一步操作,这时候就可以使用异步线程进行处理,这样主线程不 阅读全文
posted @ 2024-10-24 15:32 CharyGao 阅读(301) 评论(0) 推荐(0)
摘要: 背景:无论是iptables还是ipvs方式代理service,其实都是工作在4层(TCP/UDP over IP)概念,4层的代理方案是无法对协议进行解析并处理的。所以,在K8S v1.1版本中,新增了 Ingress API,用来可以实现7层(应用层)代理方案 采用Ingress方案需要有应用层 阅读全文
posted @ 2024-10-24 15:04 CharyGao 阅读(83) 评论(0) 推荐(0)
摘要: 从k8s的1.8版本开始,kube-proxy引入了IPVS模式,IPVS模式与iptables同样基于Netfilter,但是ipvs采用的hash表,iptables采用一条条的规则列表。iptables又是为了防火墙设计的,集群数量越多iptables规则就越多,而iptables规则是从上到 阅读全文
posted @ 2024-10-24 15:03 CharyGao 阅读(192) 评论(0) 推荐(0)
摘要: postgresql数据表中字段 解释id: 自增数字;name:字符串;create_at:记录创建数据的时间;update_at:记录更新记录的时间; 想法:create_at 和 update_at 字段用于记录记录的创建和更新时间,可以通过数据库的默认值和触发器来实现自动处理这些时间戳字段, 阅读全文
posted @ 2024-10-24 14:59 CharyGao 阅读(1464) 评论(0) 推荐(0)
摘要: docker镜像加速源配置,目前可用镜像源列举(10月10日更新最新可用)_docker可用的镜像源-CSDN博客 1.前提背景: 这里列举一下目前暂且可用的镜像源,滑到最下方查看最新9月19日更新 (9月18日测试阿里云的个人镜像服务可以正常使用,建议使用阿里云的个人镜像服务) 9月24日测试阿里 阅读全文
posted @ 2024-10-24 14:58 CharyGao 阅读(410) 评论(0) 推荐(0)
摘要: Spring/Springboot 8 篇文章0 订阅 订阅专栏 在构建分布式和微服务架构时,消息队列如Apache Kafka已成为实现高效通信和数据处理的关键组件。Spring Boot作为Java领域的流行框架,提供了与Kafka的无缝集成。本文将详细介绍如何在Spring Boot项目中优雅 阅读全文
posted @ 2024-10-24 14:57 CharyGao 阅读(457) 评论(0) 推荐(0)
摘要: 如果返回的结果是对象组合,使用postForObject是会有类型转换问题,需要使用exchange中的ParameterizedTypeReference指定返回类型。 List<Test> testList = restOperations.exchange(url, HttpMethod.PO 阅读全文
posted @ 2024-10-24 14:56 CharyGao 阅读(369) 评论(0) 推荐(0)
摘要: 在MySQL中,使用"= NULL"或"IS NULL"来检查NULL值 开篇 本文可帮助具有MySQL基础的小伙伴对PostgreSQL做一个快速的入门,通过语法之间的差异对比,降低学习成本,同样都是数据库,正所谓触类旁通。 模式的概念 模式(Schema)表示数据库中的逻辑容器,用于组织和管理数 阅读全文
posted @ 2024-10-24 14:54 CharyGao 阅读(567) 评论(0) 推荐(0)
摘要: RTO 和 RPO 都是企业灾难恢复(Disaster Recovery, DR)需要考虑的关键指标,这两个指标可以用来指导企业来制定合适的业务系统服务或数据的恢复方案。 本文介绍 RTO 和 RPO 的概念以及区别。 图:RPO(Recovery point objective) 和 RTO(Re 阅读全文
posted @ 2024-10-24 14:53 CharyGao 阅读(5629) 评论(0) 推荐(0)
摘要: chrome、edge浏览器显示“您的浏览器受管理、由所属组织管理、由贵单位管理”,是被植入病毒或其它程序了吗?如何解决? 打开浏览器设置页面可能显示的提示 您的浏览器受管理您的浏览器由所属组织管理您的浏览器由贵单位管理 相关浏览器 chromeedge 中岛由贵 您的浏览器由所属组织管理,你的组织 阅读全文
posted @ 2024-10-24 14:52 CharyGao 阅读(9993) 评论(0) 推荐(0)
摘要: 创建分支 在工作区依次点击 鼠标右键 -> TortoiseGit -> 创建分支; master主分支下创建master.txt文件 下面窗口出现后,输入分支名称为dev,即完成创建分支; dev分支下创建dev.txt文件 切换分支 在工作区依次点击 鼠标右键 -> TortoiseGit -> 阅读全文
posted @ 2024-10-24 14:42 CharyGao 阅读(9527) 评论(0) 推荐(1)
摘要: 背景:在日常开发中,我们经常会使用到idea,那么debug就更不用说了,但是你真的会打断点么,看完这篇文章再下结论吧 (ps,部分图片因为公司做过内部分享,所以打码) 一:行断点 也就是我们去给某一行加上断点,很基础也很常用 二:方法断点 在方法的行去加上断点,这样在方法的进入和方法的结束,都可以 阅读全文
posted @ 2024-10-24 14:39 CharyGao 阅读(878) 评论(0) 推荐(0)
摘要: 分布式ID的要求 UNIQ 唯一性:ID,ID 要的就是唯一 HP 高性能:生成ID的服务,不能成为瓶颈 HA 高可用:保证高可用,如果ID是订单ID,突然ID服务宕机,影响全局交易就不好了 趋势:递增还是随机,看场景需要 知道了基本要求,下面开始介绍各种策略,并分析一下他们的是否达到了这些要求。 阅读全文
posted @ 2024-10-24 14:37 CharyGao 阅读(304) 评论(0) 推荐(0)
摘要: windows 平台 鼠标手势绝对是效率神器。考虑到一定要有便捷的操作,高度自定义,最好能提供提供导出导入功能。最终我选择了 WGestures 系列。 【win 免费 安装版】WGestures 1 官网 | 网盘备份 | 视频介绍 除了不支持字母手势 或者 【win 收费 安装版】WGestur 阅读全文
posted @ 2024-10-24 14:37 CharyGao 阅读(969) 评论(0) 推荐(0)
摘要: 当鼠标手势Mouselnc遇上AHK真的太好用了,让win的体验直接更上一层楼。AHK负责改键改功能,Mouselnc负责输出。首先介绍的是Mouselnc的附带功能,这是在众多手势软件中选它的原因,再分享个人常用的手势。 Mouselnc的附带功能 边缘滚动 边缘触发,上面调节音量,下面切换桌面左 阅读全文
posted @ 2024-10-24 14:33 CharyGao 阅读(537) 评论(0) 推荐(0)
摘要: 背景 前两天剪辑找视频资源的时候下载的一个视频没有中文字幕,找到的字幕文件只有json的繁体中文字幕文件,个人使用的PotPlayer播放器不支持json字幕,所以我决定给它转换成简体中文的srt格式字幕文件,希望对大家有所帮助。 实现过程 json转srt 首先我们需要将json文件改变其中的编码 阅读全文
posted @ 2024-10-24 14:31 CharyGao 阅读(594) 评论(0) 推荐(0)
摘要: idea会自动发现有maven构建脚本,点击"Import": 全部都有module图标了: 阅读全文
posted @ 2024-10-24 14:30 CharyGao 阅读(22) 评论(0) 推荐(0)
摘要: 在要分析的模块上单击右键 --> Maven --> Show Diagram --> Project Modules就可以看到该模块对本项目下其它模块的依赖关系: 可以根据继承层级从下往上显示:最终显示结果如下: 另外,在该界面选中某个模块 --> 单击右键 --> Analyze --> Dep 阅读全文
posted @ 2024-10-24 14:30 CharyGao 阅读(2344) 评论(0) 推荐(0)
摘要: 1. 什么是MapStruct MapStruct是一个Java注解处理器,它可以简化Java bean之间的转换。它使用基于生成器的方法创建类型安全的映射代码,这些代码在编译时生成,并且比反射更快、更可靠。使用MapStruct可以避免手动编写大量重复的转换代码,从而提高生产力和代码质量。 Map 阅读全文
posted @ 2024-10-24 14:28 CharyGao 阅读(2059) 评论(0) 推荐(1)
摘要: 需求:上一个窗口设置文档,发现如果还有其他大小的需求的话,发现键位根本不够用,现在了个通过GUI界面方便多了。也可以通过这个为模板案例,学习一下如何使用AHK的GUI。 首先,界面下图所示。 每次使用完,会自动销毁窗口,功能主要是偶尔四个选区工作的要求 ; #w:: ;加上&号是为了添加快捷键,和w 阅读全文
posted @ 2024-10-24 14:25 CharyGao 阅读(450) 评论(0) 推荐(0)
摘要: 基于左右操作数或寄存器值的跳转 助记符 英文翻译 说明 JE Jump if left Equals right 相等跳转 (左操作数=右操作数) JNE Jump if left Not Equals right 不相等跳转 (左操作数≠右操作数) JCXZ Jump if CX equals Z 阅读全文
posted @ 2024-10-24 14:17 CharyGao 阅读(1060) 评论(0) 推荐(0)
摘要: 1、window环境: hosts文件位置:C:\windows\system32\drivers\etc 刷新方式: win+r,输入CMD,回车 在命令行执行:ipconfig /flushdns #清除DNS缓存内容。ps:ipconfig /displaydns //显示DNS缓存内容 2、 阅读全文
posted @ 2024-10-24 14:14 CharyGao 阅读(1595) 评论(0) 推荐(0)
摘要: win11如何更改执行策略以在 PowerShell 上运行脚本 win11如何更改执行策略以在 PowerShell 上运行脚本 如果您在运行 PowerShell 脚本时遇到错误,那是因为您需要更改执行策略,方法如下。 在Windows 11(或 10)上,默认情况下,当您尝试在 PowerSh 阅读全文
posted @ 2024-10-24 14:13 CharyGao 阅读(1023) 评论(0) 推荐(0)
摘要: TortoiseGitPlink 输入密码 马上又弹出一次让输入密码无线循环,弄了好久终于找到一个好的解决方法; 1、搜索PuTTYgen按回车就会弹出下图 2、打开 .ssh所在文件夹 注意这里 选的文件类型 要选择 All Files,默认选择的是*.ppk格式,开始是没有这个文件的 3、文件选 阅读全文
posted @ 2024-10-24 14:12 CharyGao 阅读(1007) 评论(0) 推荐(0)
摘要: 概念: 使用 Mybatis 时,最大的问题是,要写大量的重复 SQL 语句在 xml 文件中,除了特殊的业务逻辑 SQL 语句之外,还有 大量结构类似的增删改查SQL 。而且,当数据库表结构改动时,对应的所有 SQL 以及实体类都需要更改。 这大量增 加了程序员的负担。避免重复书写CRUD 映射的 阅读全文
posted @ 2024-10-24 14:09 CharyGao 阅读(1436) 评论(0) 推荐(0)
摘要: 问题描述 为了效率,使用Stream并行流parallelStream来遍历源list往宿list添加元素,后面在遍历宿list(LinkedList)的时候会偶发性报NullPointerException空指针异常或list size大小异常。(如果宿list使用的是ArrayList,那么还可 阅读全文
posted @ 2024-10-24 14:06 CharyGao 阅读(700) 评论(0) 推荐(0)
摘要: 1、首先当前分支 “提交” 并 “推送” 到服务器上,比如开发分支 dev 合并到 master 上 2、右键 > “切换分支” 到要合并的分支 master 3、拉取最新 master 分支,然后 右键 选择 合并,选择 dev 分支,勾选合并,确定 4、确定后可能会提示有错误,这是需要解决冲突, 阅读全文
posted @ 2024-10-24 11:15 CharyGao 阅读(1309) 评论(0) 推荐(0)
摘要: 一、Sentinel快速入门 Sentinel官网地址:https://sentinelguard.io/zh-cn/index.html Sentinel项目地址:https://github.com/alibaba/Sentinel Sentinel是阿里巴巴开源的一款微服务流量治理组件,主要以 阅读全文
posted @ 2024-10-24 11:07 CharyGao 阅读(518) 评论(0) 推荐(0)
摘要: 写在前面 当实际工作中遇到这么一种需求:数据库没有这条数据,我需要新增,有这条数据我需要修改,或者某个字段的数量进行调整。 那么我们就可以考虑使用mysql的upsert语句了。 建表准备 CREATE TABLE `student` ( `id` varchar(50) NOT NULL DEFA 阅读全文
posted @ 2024-10-24 10:40 CharyGao 阅读(454) 评论(0) 推荐(0)
摘要: MySQL使用Sequence创建唯一主键的实现示例 更新时间:2024年05月26日 11:03:41 作者:Holy_Java Sequence提供了更多的灵活性,本文主要介绍了MySQL使用Sequence创建唯一主键的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参 阅读全文
posted @ 2024-10-24 10:40 CharyGao 阅读(513) 评论(0) 推荐(0)
摘要: 实现多参数必填其一校验 项目中有遇到多参数必填其一校验,百度无果后查看Hibernate Validator官方文档1解决了问题。 场景 通过手机号和身份证作为uniqueId来查询到唯一的用户,作为一个类的两个属性,在controller层使用@Validted注解进行参数校验。 解决方式 百度了 阅读全文
posted @ 2024-10-24 10:38 CharyGao 阅读(85) 评论(0) 推荐(0)
摘要: MyBatis多数据源配置与使用 前言:MyBatis默认情况下只能在application配置文件中配置单数据源,但有一些开发场景可能有多数据源的需求,这需要做一些额外的配置。 查了一下Mybatis多数据源的解决方案,主要有两种方式: 其一 利用MyBatis的@MapperScan注解,该注解 阅读全文
posted @ 2024-10-24 10:07 CharyGao 阅读(285) 评论(0) 推荐(0)
摘要: mybatis与mysql的Json格式映射-使用JSONObject JavaBean类 1 2 3 4 5 6 7 public class ShareClose { private Integer id; private String tsCode; private JSONObject cl 阅读全文
posted @ 2024-10-24 09:57 CharyGao 阅读(253) 评论(0) 推荐(0)
摘要: 众所周知sql中条件in的值是不能超过1000个的,而mybatis可以使用动态sql拼接的方式绕开这个限制,网上看了很多例子,我感觉都不太好理解,下面介绍一个超简单的例子。 select * from user_info where 1 = 1 <if test="userList!= null 阅读全文
posted @ 2024-10-24 09:32 CharyGao 阅读(778) 评论(0) 推荐(0)
摘要: 前言 众所周知,Java 使用Stream流做多线程处理是非常方便的。随着并行编程越来越流行,Java从1.7就开始提供了Fork/Join 支持并行处理,并且在1.8版本进一步加强了相关功能。并行处理就是将任务拆分子任务,分发给多个处理器同时处理之后进行合并。下面将会对并行流(parallelSt 阅读全文
posted @ 2024-10-24 09:28 CharyGao 阅读(4539) 评论(0) 推荐(0)
摘要: IDEA日志快捷键模板 日常开发中,涉及最多也是重复工作较多的代码就是打日志,为了节省时间可以将打日志操作设置为自定义快捷键。 模板效果展示,下文是设置自定义模板的教程,教程中的内容可以去文末复制使用。 进入IDEA设置中,找到Live Templates,点击右侧加号,添加自定义模板 添加自定义模 阅读全文
posted @ 2024-10-24 09:24 CharyGao 阅读(124) 评论(0) 推荐(0)
摘要: 一、ElasticSearch 简介 中文官方文档链接 https://www.elastic.co/guide/en/elasticsearch/client/java-rest/7.6/java-rest-high-getting-started.html 1、简介ElasticSearch 是 阅读全文
posted @ 2024-10-24 09:14 CharyGao 阅读(72) 评论(0) 推荐(0)