10 isea533

尚未进行身份认证

Mybatis分页插件、Echarts-Java、Easy-xls等等

等级
TA的排名 395

通用 Mapper 进阶实例:为什么好久都没更新了?

写篇博客关于通用 Mapper,通用 Service 方法。可以简单实现同级列表数据的上下拖拽改变顺序。为什么很久没更新?核心已经很完善了,扩展也很容易。实际上我还想精简方法,不想增加过多的方法,有需要的自己扩展。...

2020-03-16 22:40:58

MySQL 批量修改表和字段

MySQL 的 information_schema 数据库中包含了大量的元数据,通过这些数据可以方便的获取表和字段的信息,通过组合这些信息可以生成操作表和字段的 SQL。本文只是为了方便自己的记录。由于发现系统多个数据库使用的字符集和排序方式有误,因此要修改错误的这部分表,由于修改表无法直接影响 char, varchar, text 等字符串类型的值,因此这部分字段还需要特殊修改。又因为数...

2020-02-14 14:59:47

MySQL JSON 类型用法

MySQL JSON 类型用法存取示例直接使用 通用 Mapper1. 数据库存取使用 MyBatis 操作数据库,针对 JSON 类型字段,提供一个类型处理器用于数据库存取时的数据转换。1.1 类型处理器@MappedTypes({Map.class, JsonObject.class, JsonArray.class, JsonPojo.class})public class ...

2020-02-13 18:23:44

企业 Maven 依赖管理层次结构设计 - 附录

Chat 文章地址: 企业 Maven 依赖管理层次结构设计由于文章涉及内容太多,不想在文章中包含太多基础的内容,但是对于了解不深的人来说,没有这些内容也不容易真正掌握,因此在博客上通过本文附加一些额外的内容来完善上述 Chat。1. 搭建 Nexus 私服下载地址https://www.sonatype.com/download-oss-sonatypehttps://help.s...

2020-01-30 17:15:20

利用 MySQL 复制聚合多个库到同一个数据库

由于微服务分库导致无法跨库(忽略 db_name.table_name 方式)统计查询,因此利用 MySQL 主从复制的方式,将主服务器上的多个数据库同步到从服务器上的单个数据库上,从库设置只读,仅用于统计查询。假设主服务器上有以下数据库:db_a:table_a1table_a2db_b:table_b1db_ctable_c1table_c2下面是简要...

2020-01-19 14:37:54

记一次内存溢出排查过程

有一个服务经常会停止服务,一开始没特别注意,出问题就重新部署。后来有一次重启前看了眼 GC,发现一直在 Full GC:[149644.445s][info][gc,start ] GC(2210) Pause Full (Allocation Failure)[149644.447s][info][gc,phases,start] GC(2210) Phase 1: Mark ...

2020-01-17 17:29:45

Maven Nexus 2020 大坑紧急扩散:The Central Repository is Moving to HTTPS

如果你在用 Maven 的 Nexus,用 2.x 的低版本,或者 3.x 的高版本,都有可能遇到突然无法通过 Nexus 代理下载依赖的问题。问题症状In Service - Remote Automatically Blocked and Unavailable原因如下:https://support.sonatype.com/hc/en-us/articles/36004128...

2020-01-17 14:28:44

2019 年博客总结

这一年的博客才写了两页多一点,总是能看到 2018 年博客总结,总觉得还没过多久,没想到这么快又一年了。去年写总结时似乎还精力充沛,如今想在业余时间写个博客,更新下开源项目,都得找孩子睡觉的时间,孩子小的时候带着挺累,孩子睡的时候我也想睡。2019 年,都是工作中用到的各种工具,从下文的列表来看,集中在了 Docker,Kubernetes,Rancher,MySQL 等等。唯一一篇特别深入的内...

2020-01-01 16:00:23

离线导出和导入 Docker 镜像到仓库

参考 Rancher 离线安装脚本,对脚本进行简化。功能:通过脚本可以从一个镜像仓库(例如 harbor)导出,然后导入到另一个镜像仓库。首先需要整理要导出的镜像列表,写入 docker-images.txt 中,示例如下:10.10.10.233/develop/assets:20191216190210.10.10.233/develop/announcement-service:...

2019-12-19 11:02:27

MySQL 备份和还原

针对 linux 上的 MySQL 进行备份还原。备份脚本 mysql-bak.shdb=$1if [ -z $db ] then echo '错误: 清输入表名!' echo '用法: ./mysql-bak.sh db_name' exit 1fiD=$(date +%Y%m%d%H%M)DUMP=/data/mysql-bak/${db}-${D}.tgzecho...

2019-12-06 12:24:55

Rancher 两种 Registry 镜像库的区别和用法

Rancher 有两种配置 Registry 镜像库的地方,这两种方式起的作用不同。Rke 配置集群时设置参考:https://rancher.com/docs/rke/latest/en/config-options/private-registries/配置多个RKE支持在中配置多个私有Docker镜像库的功能cluster.yml。通过传递您的镜像库和凭据,它允许节点从这些私有镜...

2019-11-03 10:41:22

Harbor Https 私有证书配置注意事项

官方文档:https://github.com/goharbor/harbor/blob/master/docs/configure_https.md想要访问远程的 Harbor,就需要配置 HTTPS 访问。配置过程中,Harbor 服务器和 Docker 客户端都需要进行相应的配置才能让两者互通。首先按照官方文档生成证书(证书名称无所谓)。使用 IP 访问的情况下,所有域名都可以使用该...

2019-11-02 15:34:10

Dubbo 接口异常处理逻辑

API 接口中抛出的异常类型,有一系列的规则,代码在 ExceptionFilter 的 onResponse 中。1. 如果是受检异常(非Runtime)就直接抛出这是因为如果是受检异常,接口定义的 throws 中需要涵盖,调用端需要捕获该异常,该异常一定能访问到。2. RuntimeException 并且接口 throws 时这种情况下,接口指明抛出的异常,调用端也能获取该异常,...

2019-10-30 17:33:29

Dubbo, Hessian 序列化注意事项

最近遇到一个问题,A 服务调用 B 服务时,返回值反序列化时,POJO对象变成了Map类型。在B服务单独测试的时候一直还原不了,在 A 服务进行测试的时候,跟到序列化数据时才看到原因。原因很简单A 服务的接口方法返回的结果是一个接口,接口的实现不在 A 服务的 API 包中,因此在 B 服务找不到该接口真正的实现类,在 B 服务调用接口返回结果反序列化找不到具体的类型时,就会以 Map 类型进...

2019-10-28 18:41:37

Java 操作 office 的辅助工具

当使用 docx4j, poi等工具处理 office 文件时,如果想要实现复杂的功能,使用明面上的简单接口已经很难实现。这个时候如果配合一个工具,按照 XML 结构递归处理,就能实现很多强大的功能。这里说的工具就是 **Open XML SDK 2.5 for Microsoft Office **:下载地址:https://www.microsoft.com/en-us/download...

2019-10-23 15:53:13

Jacob 使用细节优化

Jacob 可以用来做很多事,我这里主要用到了通过 office 转 pdf 的功能。在使用过程中,偶尔会出现(1%的概率)进程异常,出现弹框等问题导致程序假死。为了解决类似问题,在使用过程中,可以从以下细节进行优化。1. 只读模式使用 office 时,如果文件被占用,在打开始会弹框进行提示:出现该弹窗后会导致程序卡住不动。如果改为只读模式,就不存在这个问题,代码如下:注意上面...

2019-10-20 23:04:22

MySQL 安装和配置

官方文档非常的全面,但是通过常规搜索引擎搜索时很难直接看到,因此本文以官网为主,这里只涉及整个过程的关键部分。官方文档:https://dev.mysql.com/doc/refman/5.7/en/installing.html包含各种操作系统的详细安装步骤。官方下载:https://downloads.mysql.com/archives/这个地址可以选择所有版本进行下载MyS...

2019-10-18 20:15:28

Seata 分布式事务功能测试(三)

前置内容:Seata 分布式事务功能测试(一)当前数据库隔离级别为 read_commit,测试调用服务后,再通过服务查询时获取的数据是否正确。//查询当前账户余额Double amount = accountService.getAmount(orderVO.getUserId());logger.info("扣款前余额: " + amount);accountService.de...

2019-10-11 12:03:31

Seata 分布式事务功能测试(二)

前置内容:Seata 分布式事务功能测试(一)增加了一个特殊逻辑,只为验证能否多次调用同一个服务。//扣减用户账户//为了测试多次调用同一个服务,这里分成两次扣款TAccountVO accountVO = new TAccountVO();accountVO.setUserId(orderVO.getUserId());Double totalMount = orderVO.ge...

2019-10-11 11:55:48

Seata 分布式事务功能测试(一)

分布式事务测试基础代码参考:https://github.com/seata/seata/wiki/Quick-Start本文的测试没有直接使用上面的项目,只是参考表和逻辑在我自己的框架中实现了一遍,实现过程中,还发现一些必要的信息。提醒依赖除了添加 seata-all 的依赖外,默认的 undo 序列化使用的 jackson,因此还需要相关的依赖才能启动成功。部分逻辑修改主要是扣库...

2019-10-11 11:13:22

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 图书勋章
    图书勋章
    CSDN技术图书作者专属勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。