JAVA 二月 03, 2024

基于 MyBatis 拦截器机制实现一个敏感数据处理组件

文章字数 22k 阅读约需 20 mins.

MyBatis 作为一个流行的持久层框架,提供了拦截器 Interceptor 机制,允许开发者在 SQL 执行过程中插入自定义逻辑。本文将深入探讨 MyBatis 拦截器的用法和使用场景,并以处理敏...

查看全文

JAVA 二月 03, 2024

基于 MyBatis 拦截器机制实现一个敏感数据处理组件

文章字数 22k 阅读约需 20 mins.

MyBatis 作为一个流行的持久层框架,提供了拦截器 Interceptor 机制,允许开发者在 SQL 执行过程中插入自定义逻辑。本文将深入探讨 MyBatis 拦截器的用法和使用场景,并以处理敏感数据场景为例实现了一个自定义拦截器。

MyBatis 官网中 Interceptor 的介绍:

MyBatis 允许你在映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:

  • Executor (update, query, flushStatements...
查看全文

AI 一月 28, 2024

HumanEval-X

文章字数 25k 阅读约需 23 mins.

HumanEval-X 是 清华大学 KEG 实验室 THUDMCodeGeeX 系列多语言代码生成模型中提供的一套评价标准。

使用了与 HumanEval 相似的评价方式,不同的是,除 Python 外还包含了 C++JavaJavaScriptGoRust 语言的手写样本,可对上述语言的代码生成能力进行评价:

接下来,我们以评估 StarCoderBase-7B 模型的 Java 代码生成能力为例,简单介绍一下 HumanEval-X 的用法。

先来看下数据集,引用 如何...

查看全文

K8S 一月 19, 2024

正确管理kubernetes有状态应用之nacos

文章字数 14k 阅读约需 12 mins.

本文旨在分享 kubernetes 环境下如何管理 nacos,阅读本文需要一定 kubernetes 基础。

nacos 是阿里开源的一款注册中心、配置中心软件。更多信息移步:https://nacos.io/zh-cn/docs/what-is-nacos.html

Kubernetes 有状态应用管理方式,通常有三种:手动、helmoperator

推荐的优先级:手动 < helm < operator

kubernetes 发展初期,用户通常使用 helm 管理有状态应用...

查看全文

PYTHON 一月 14, 2024

JupyterLab 实战

文章字数 11k 阅读约需 10 mins.

Project Jupyter (/ˈdʒuːpɪtər/) 是一个旨在开发跨多种编程语言的交互式计算的开源软件、开放标准和服务的项目。

Project Jupyter 已经开发和支持了交互式计算产品 Jupyter Notebook 和 JupyterLab。

Jupyter Notebook 是经典的 Notebook 交互界面,JupyterLab 是下一代的 Notebook 交互界面。

本文主要介绍 JupyterLab 环境搭建,包括远程密码访问及添加 Kernel 以支持其他语言...

查看全文

BOOK 一月 07, 2024

《只有偏执狂才能生存》书摘

文章字数 4.3k 阅读约需 4 mins.

豆瓣评分 7.8

计划的制订应该仿效消防部门。谁也不能预料下一次火灾将在何处发生,因而要做的事就是组建一支精力充沛、效率很高的队伍,使之能够像处理普通事件一样处理意外事件。

既然回顾往事的时候还不能说清何时出现了战略转折点,那么身处其中的时候又怎么能回答这个问题呢?经历转折点的人感觉到转折点的时间并不一致,就像队伍中的人感觉到迷路的时刻有先有后。

计算机产业内这种更新换代一直让我想起人的“变脸”(Morphing)。不知不觉中一张脸消失了,与此同时,一副新面孔显现了,你无法准确...

查看全文

AI 十二月 31, 2023

HumanEval

文章字数 7.1k 阅读约需 6 mins.

HumanEval 是 OpenAI 用来评估大语言模型生成代码能力的工具,包括手写的 164 个 python 编程问题及解答的 jsonl 格式数据,以及执行评估的脚本。

先来看下数据集,下面是 HumanEval.jsonl.gz 中的一条数据:

{
    "task_id": "HumanEval/0",
    "prompt": "from typing import List\n\n\ndef has_close_elements...
查看全文

JAVA 十二月 24, 2023

离线环境下 Maven 编译打包

文章字数 2.8k 阅读约需 3 mins.

某些离线场景下我们可能无法连接 Maven 中央库或其他内网私服,又想通过 Maven 对源码进行编译打包。

本文给出了在离线环境下使用 Maven 编译打包的方案。

假设目标环境已经安装好了 JDK 和 Maven,并且将要编译的源码工程 demo-project 放置在了 /maven-offline/build 路径下。

先在联网环境成功执行一次编译,保证使用的 Maven 本地缓存仓库(默认路径 ~/.m2/repository)中包含了编译所需的依赖。

将本地缓存仓库目录 repository...

查看全文

BOOK 十二月 17, 2023

《芯片战争》书摘

文章字数 4.9k 阅读约需 4 mins.

https://book.douban.com/subject/36350632/ 8.4

我们整天说创新,殊不知谈创新不谈风险、不谈颠覆的,都是伪创新。

中国台湾地区的芯片每年提供全球37%的新计算能力。两家韩国公司生产的存储芯片占全球的44%。荷兰公司阿斯麦制造了全世界100%的EUV光刻机

如果不是因为飞蛾的话,这就是计算领域的一次飞跃。因为真空管像灯泡一样发光,会吸引昆虫,需要工程师定期“清理昆虫”(debugging)。

肖克利半导体公司的八名叛逆者被普遍认为是硅谷的创...

查看全文

DEVOPS 十二月 10, 2023

SonarQube 项目总览状态导出工具

文章字数 3.8k 阅读约需 3 mins.

随着 SonarQube 上的项目越来越多,我们希望能够对这些项目按照一定的指标进行筛选,比如:

  • SizeLDuplications5% - 10% 之间的项目
  • Coverage60% 以上的项目

Sonar 界面中提供的筛选功能,只能按照指定的范围进行筛选,并且每个指标除了第一个和最后一个范围,中间的范围都是包含下面范围的。例如 Coverage 指标提供的范围是:

  • ≥ 80%
  • 70% - 80%
  • 50% - 70%
  • 30% - 50%
  • < 30%

选择 ...

查看全文

JAVA 十二月 03, 2023

MyBatis-Plus 中的 IService 和 BaseMapper

文章字数 5.3k 阅读约需 5 mins.

原文地址:https://wyiyi.github.io/amber/2023/12/01/mybatis-plus/

MyBatis-Plus 作为一个优秀的 ORM 框架,致力于简化和提高 Java 应用程序对数据库访问的效率。

在使用的过程中,发现 MyBatis-Plus 提供了 BaseMapper 和 IService 两个核心接口,但有些相似之处:它们如何使用及使用场景分别是什么?

BaseMapper 接口是 MyBatis-Plus 提供的通用 Mapper 接口,它继承自...

查看全文
加载更多
0%