摘要: 第一部分:自定义持久层框架 在该部分中主要学习到了以下几个关键知识点: 1.1 分析手动编写JDBC操作面临的问题 数据库连接频繁创建、销毁造成资源浪费,影响系统性能; sql语句硬编码,不易维护; 使用preparedStatement传递sql参数存在硬编码,不易维护; 对查询结果集解析以及封装 阅读全文
posted @ 2021-05-19 15:31 墨、鱼的blog 阅读(235) 评论(0) 推荐(0) 编辑
摘要: Mybatis开发中经常会用到pagehelper分页插件,除此之外还有慢sql上报等各种各样的插件,那么Mybatis是如何来实现如此强大的插件机制呢?一起来看看吧。 Mybatis插件机制介绍 MyBatis 允许你在映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插 阅读全文
posted @ 2021-05-19 15:30 墨、鱼的blog 阅读(608) 评论(0) 推荐(1) 编辑
摘要: 背景:使用SpringCloud进行微服务开发,且后端服务调用大都使用Feign Client进行调用。 1、项目接入Swagger <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifa 阅读全文
posted @ 2021-05-19 15:28 墨、鱼的blog 阅读(529) 评论(0) 推荐(0) 编辑
摘要: 手敲代码来体验IDEA+ASM+Java Attach API实现方法增强的一个示例过程记录。 需求和目的 /** * 模拟业务方法 * @author xujian * 2021-03-12 10:52 **/ public class MyBizMain { public String foo( 阅读全文
posted @ 2021-03-15 14:23 墨、鱼的blog 阅读(1338) 评论(1) 推荐(1) 编辑
摘要: 背景:大家都在说Skywalking Agent实现的核心原理就是Java Agent+字节码操作。但是这两者是如何起作用的,一直比较模糊,所以通过这篇博客来记录一下解疑答惑的过程。 通过这篇博客应该可以解答如下几个问题: Skywalking具体使用什么来操作字节码; Skywalking的插件是 阅读全文
posted @ 2021-03-06 19:56 墨、鱼的blog 阅读(1422) 评论(0) 推荐(0) 编辑
摘要: 问题重现 示例代码如下: Map<String, Object> map = new LinkedHashMap<>(); map.put("name", "xujian"); map.put("age", 25); Gson gson = new Gson(); for (Map.Entry<St 阅读全文
posted @ 2021-02-17 14:53 墨、鱼的blog 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 为什么要做这次分享? 已经了解到公司基础架构部门和很多业务部门的技术已经在落地Service Mesh了,Service Mesh本身是个基础设施,最终肯定会推向各个业务,那对业务开发人员或多或少会有影响, 为了使平台开发工程师和业务开发工程师那时候能更好的沟通,就想对Service Mesh做一个 阅读全文
posted @ 2021-02-17 14:52 墨、鱼的blog 阅读(1045) 评论(0) 推荐(0) 编辑
摘要: 第一章:开年遇天灾,雪上加霜 2020年的春节,好像从来没有在记忆里停留过。 伴随着一场“新冠疫情”,本应该家家户户贴春联,变成了家家户户戴口罩,大街小巷不见人的景象。 对我来说2020开年不顺,在疫情的影响下大小企业纷纷出现了经营困难,资金链断裂甚至宣布倒闭。我们公司也难逃此劫,很不幸我成为了被优 阅读全文
posted @ 2021-02-17 14:51 墨、鱼的blog 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 常用的数据同步方案 Q:大家知道的数据库同步方案或者工具有哪些? 数据库迁移场景 以Mysql数据库迁移为例,数据库常用迁移方案有停机迁移和平滑迁移。 平滑迁移又分为双写和CDC(数据变更抓取)。 双写:即所有写入操作同时写入旧表和新表,这种方式可以完全控制应用代码如何写数据库,听上去简单明了。但它 阅读全文
posted @ 2021-02-17 14:50 墨、鱼的blog 阅读(8054) 评论(0) 推荐(0) 编辑
摘要: 本文主要介绍如何使用gitlab的webhook来打通企业微信消息提醒。 前提准备 企业微信消息发送接口 根据企业微信开发者文档得到一个消息发送的接口url,参照:企业微信群机器人配置说明; gitlab(账号,用户组,项目) 生成gitlab账号token 获取项目的project_id 参考gi 阅读全文
posted @ 2021-02-17 14:49 墨、鱼的blog 阅读(5687) 评论(0) 推荐(0) 编辑