利用 Jakarta 来验证 Java Bean 数据合法性

Bean Validation 为 JavaBean 和方法验证定义了一组元数据模型和 API 规范,常用于后端数据的声明式校验。 2017 年 11 月,Oracle 将 Java EE 移交给 Eclipse 基金会。 2018 年 3 月 5 日,Eclipse 基金会宣布 Java EE (Enterprise Edition) 被更名为 Jakarta EE。因此 Bean Validation 规范经历了从 JavaEE Bean Validation 到 Jakarta Bean Validation 的两个阶段: JSR 303 Read more ...

2023-06-02 java , jakarta , java-bean , validation

《美国大萧条》读书笔记

怎么知道的这一本书 在微信上关注了先知书店店长荐书,某一天的公众号文章中推荐了 [[罗斯巴德]] 这位经济学家的几部著作,这一本《美国大萧条》一下子就抓住了我的眼球,他的另外一部作品 [[人,经济与国家]] 也在我的待看清单上。 关于作者 [[罗斯巴德]] (Murray Newton Rothbard) 是一位美国犹太裔经济学家,历史学家,自然法理论家,政治理论家,是[[奥地利学派]]著名的学者。他的著作大量的介绍了 [[米塞斯]] 的工作,对现代的自由意志主义,和无政府资本主义理论的发展和传播有着极大的贡献。 这一本《美国大萧条》是罗斯巴德对 Read more ...


给 macOS 编写的纯键盘操作流 Shortcat

Shortcat 是一个 macOS 上的效率工具,可以利用键盘了操作 UI 界面上的一切,而不需要使用到触摸板或鼠标。理念有一些类似于 Chrome 上的 [[vimium]] 插件,利用快捷键在界面上的每一个可以点击的区域加上快捷按键,通过按键来操作界面的内容。 安装 可以直接通过 brew 安装 brew install shortcat 使用 打开 然后可以使用默认的快捷键 Shift+Cmd+Space 来调用出来 Shortcat,然后界面每个可以点击的地方都可以直接看到一个黄色的标签,通过这个搜索框就可以直接进行检索然后,按 Read more ...


macOS 自定义系统设置记录

因为电脑空间告警,所以用 Clean Me 这个应用对系统进行了一次清理,没想到的是,可能在我误操作的情况下把我系统的设置和全部软件的设置都给清空了。我所有的系统配置都恢复了初始的状态,让我使用起来非常变扭,我在之前有写过一篇 MacBook 初始化和应用安装 的文章,但是那篇文章写的比较啰嗦,索性就重新整理一下。 下面的内容会按照常用的功能来划分。 Keyboard 首先在 Input Sources 中添加 Rime 输入法。 Touch Bar 设置成默认 Fn 键 Touch Bar shows -> F1, F2, etc. K Read more ...

2023-05-21 macos , macbook

EV Hosting 共享邮件服务

过去的一个月里面 EV Hosting 陆陆续续更新了共享主机服务,域名注册服务,现在因为我自己使用域名邮箱一直也在使用域名邮箱,所以现在也推出了域名邮箱服务。 很早之前就想给自己的网站弄一个自定义的域名邮箱发发验证码,邮件通知之类的,就了解了一下域名邮箱的服务。我自己之前就尝试过国内的一系列的域名邮箱,但后来这种限制(绑定电话,限制发件)就不再使用了,之前的网站我是自己注册了一个 Gmail SMTP 发件,虽然没遇到什么大的问题,但 Gmail 还是有一些发件限制的(每 24 小时不能超过 500 封)一旦超过,可能 Gmail 收发件都会收到影响 Read more ...


《非暴力沟通》读书笔记

怎么知道的这一本书 在写这篇读书笔记的时候去豆瓣看了一眼,我才发现我已经将这一本书加入待看列表,将近 10 年了,早已经忘记了当时是怎么知道的这一本书,又是为何把这本书加入到了待看清单。 关于作者 几句话总结书的内容 什么是暴力 在进入《非暴力沟通》之前要先了解什么是暴力,认识暴力,有助于理解非暴力。 我们常常认识不到自身的暴力,常常以为只有打人、鞭挞、杀人以及战争才算是暴力。相比于身体上的暴力,造成精神伤害的,那就是「隐蔽的暴力」。而隐蔽的暴力往往更加伤害更大。 什么是非暴力 非暴力主张积极进取,而非消极无为。 非暴力意味着让爱融 Read more ...


Drift 一个开源可以自托管的 Gist

Drift 是一个可以自行架设的 Gist 代替。使用 [[Next.js]] 13 和 React Server Components 编写。 Drift 发布了一个官方的 Demo 分享的文件页面内容 特性 支持 GitHub 扩展的 Markdown 渲染 支持用户登录,可以使用 GitHub OAuth 支持公开的,私有的,密码保护的内容 语法高亮和代码语言检查 拖拽的文件上传 安装 目前官方还没有发布编译好的 Docker 镜像,需要自己编译部署。但是也非常简单。 拉取官方的代码 git clon Read more ...


Google Analytics 代替产品对比

虽然我把其他服务陆陆续续从 Google 迁移出来,但 Google Analytics 一直都运行良好所以也没有怎么管,但 Google Analytics 到今年年中的时候会强行升级 GA4,看了一下升级的过程和 Google Analytics 的操作实在太复杂,就诞生了迁移出 Google Analytics 的想法。简单地了解了一下目前的 Google Analytics 的代替品,收费的,自行架设的还很多选择。这篇文章就简单地对比一下。 主要还是分成两个部分来划分搜罗的产品,可以自行托管的,和商用的。看过我之前文章的小伙伴应该知道,我个人会 Read more ...


自建 IT tools 一系列常用工具集

it-tools 是一个使用 [[Vue.js]] 和 TypeScript 编写的常用 IT 工具的集合。 集成工具 it-tools 项目中集成了如下的工具: 密码相关 Token generator Hash text, 包括了 MD5,SHA256 在内的 8 种 Hash Bcrypt UUID Encrypt / decrypt text BIP39 passphrase generator Hmac generator RSA key pair generator 转换 日期时间转换 Read more ...

2023-05-07 it-tools , tools , it , vue , base64

EV Hosting 域名注册服务

EV Hosting 上线了域名注册服务,现在可以在 EV Hosting 选购超过 20 种的域名后缀,包括了常见的 .com, .org, .me, .info 等,还上线了 .fun, .life, .studio, .store 等等新的顶级域名。域名的价格在不同时期会略有不同。 在目前阶段,.fun, .pw, .life, .shop, pics, .studio, 等等域名只需要 20~30 元不等就可以购买一年。但是域名的续费一般会比较贵,可以酌情考虑不同的域名后缀。EV Hosting 也会在不同时间提供最优惠的域名注册服务。 注册 Read more ...


最近文章

  • HomeShare 让本地电脑文件夹成为文件分享服务器 前些天出门拍了很多照片,回来从 SD 卡导出之后就想有一个可以快速一键分享出去的方法,通过微信传,虽然可以通过笔记一次发送超过 9 张图片,但是还是需要将照片上传到微信的笔记里面,虽然我之前也有使用自己的在线图库,但依然避免不了上传等待的过程,并且如果照片比较大时,等待的时间会很长。所以这几天我一直再想能不能有一个方法可以直接将本地的文件夹共享出来,或者直接让别人将图片一次性发送到我本地。
  • Dola 你的私人智能 AI 助手轻松管理日程 我个人一直使用 Google Calendar 作为日程管理,很久以前也购买了一个叫做 Checker Plus 的 Chrome 插件,可以直接在 Chrome 的插件栏查看日程,并且还可以直接通过自然语言来创建日程,以及在日程之前弹窗提醒,实话说这款插件已经能满足我 90% 的日程安排了。
  • K3s 部署 Bitwarden 我之前一直是在一台机器上使用 Docker compose 安装了 Bitwarden,但是这样存在一个隐患,那就是如果这一台机器宕机了,或者发生任何意外,那么我可能有一段时间无法访问我的所有密码仓库,所以为了避免这样的问题,尤其是在我已经稳定运行 K3s 一段时间之后,我就想着将 Bitwarden 迁移到 K3s 上,并且我希望直接使用 Bitwarden 历史的数据,并且也直接使用原来的域名,密码等等,这样就不需要让我所有的设备重新再登录一遍。那么本文就记录一下我在 K3s 上搭建 Bitwarden ,以及将历史数据迁移到 K3s 中的过程。
  • K3s 中给节点添加标签并实现 Pod 调度控制 给 K3s 中的节点添加标签并实现 Pod 调度是一个非常常见的需求,特别是当你希望某些 Pod 只在特定地理位置的节点,比如美国,日本,上运行的时候。
  • 使用 Claw Cloud 免费部署 Gemini 反向代理教程 前两天介绍过永久免费的 Claw Cloud Run,本文将介绍一下如何使用 Claw Cloud Run 来免费部署一个 Gemini API 反向代理服务。