java reflection

Java 中的提供了一组 API 用来在运行时动态修改方法,类,接口的行为,这个被称为 Reflection。 For every type of object, the Java virtual machine instantiates an immutable instance of java.lang.Class which provides methods to examine the runtime properties of the object including its members and type information. Read more ...

2019-09-11 java , jvm , java-reflection

Java 查漏补缺:Java 8 中接口 default 方法

Java 8 新特性: lambda expressions functional interfaces method references streams Optional 还有 interface 中的 static 和 default 方法。 基本使用 Java 8 允许在接口中定义默认方法。 interface Collection { void add(); default void debug(){ System.out.println("put the key in"); } } 为什么要引 Read more ...

2019-09-10 java , java8 , interface

理解 GraphQL Schema 结构定义

在上一篇 GraphQL 使用 中了解了 GraphQL 大致用法,如果要更加深入的了解 GraphQL ,那就不得不重新从 Schema 来认识 GraphQL,说到底 GraphQL 还是一个强类型定义,客户端可操作的类型都是需要提前定义好的,这个结构就是这篇文章的重点 – Schema. 因为已经有很多的语言已经实现了 GraphQL,官方不能以某一个语言来具体表达,所以他们自定义了一套表示 GraphQL Schema 的简单表达。1 GraphQL 支持的数据操作 GraphQL 对数据支持的操作: 查询 Query,获取数据的基本 Read more ...


从 MySQL 迁移到 PostgreSQL 方案调研

之前的文章 PostgreSQL 初识 和 PostgreSQL 数据类型 大致的把 PostgreSQL 了解了一下,那么接下来就是真正地把它用起来。 PGLoader 开源迁移工具,通过一行命令即可做到无缝迁移 https://github.com/dimitri/pgloader PGLoader 原本可以将不同数据源导入到 PostgreSQL 数据库,MySQL 只是它支持的一种。PGLoader 使用 PostgreSQL 的 COPY 命令将数据从源数据库或文件复制到目标 PostgreSQL 数据库中。 安装 Debian Read more ...


GraphQL 使用

很多人都知道 GraphQL 起源于 Facebook,但是似乎很少中文材料提到 GraphQL 出现的契机,我在看完这个纪录片 之后才对 GraphQL 的出现有更加深刻的了解。都知道当年 Facebook 的移动客户端都是网页,随着移动互联网发展,Facebook 网页实现的客户端性能和体验受到非常严重的影响,所以后来不得不去做原生的应用。那么这个时候就遇到了一个问题,原来直接使用网页,那么不同客户端用的接口都是给网页用的,最多做一下屏幕的适配,但是如果使用原生的应用,那么必然会需要设计不同的 API,而 Facebook 的工程师发现,对于复杂的 Read more ...

2019-09-07 graphql , apollo , facebook , restful , api

Drools 学习笔记之决策表: Guided Decision Table

Column 决策表的列定义。 Ruleflow-Group A string identifying a rule flow group. In rule flow groups, rules can fire only when the group is activated by the associated rule flow. Example: ruleflow-group "GroupName" Agenda-Group A string identifying an agenda group to which you want t Read more ...


使用 ripgrep 通过正则快速查找文件内容

ripgrep(简称 rg),是一个用 Rust 实现的命令行搜索工具,可以通过正则来搜索当前的目录。默认情况下 ripgrep 会遵循 .gitignore 的内容,并且自动跳过隐藏的文件目录,以及二进制文件。 ripgrep 原生支持 Windows, MacOS, Linux。ripgrep 和其他流行的搜索工具非常相似,比如 The Silver Searcher, ack 和 grep. https://github.com/BurntSushi/ripgrep rg 的优势 目前 Linux 下可用的搜索工具非常多,GNU 中的 Read more ...

2019-09-02 ripgrep , grep , find , ag , rg , search , regex

在 Vim 下使用 fzf

fzf 的介绍看这篇文章,这篇文章主要总结一下 Fzf 在 vim 下面的使用。 安装过程就不再说,安装后 :help fzf 可以查看所有帮助。 fzf-vim 安装之后, :FZF 命令会被添加。 " 在当前目录搜索" :FZF " 在 home 目录搜索" :FZF ~ " fzf 全屏" :FZF! 插件配置 常用的配置 :help 中都能看到。 " An action can be a reference to a function that processes selected lines function! s:build_qu Read more ...

2019-09-02 fzf , vim , vim-plugins

我的 Linux 环境及 Cinnamon 桌面配置记录

记录一下 Ubuntu 和 Linux Mint 的一些初始化设置,以便于快速恢复自己熟悉的工作环境。当然我更建议日常进行硬盘及文件的快照备份。Linux Mint 下可以是 timeshift 进行文件备份。而如果要对整块硬盘进行迁移和备份,切换到新的机器中,我推荐使用 clonezilla12 来备份与恢复。 桌面环境 Cinnamon 毕竟用了多年 GUI,我至今还没有接受完全的命令行,虽然有人非常推荐用 i3,但是至少在我熟悉目前这一套工作环境前,我还没有去尝试 i3,等某一天真的对目前的桌面非常熟悉了,并且能够希望通过快捷键来加速窗口管理了, Read more ...

2019-08-30 ubuntu , linux , linut-mint , cinnamon , ppa , apt

在 Ubuntu 下为 Postman 创建 icon

Postman 早两年就不再更新 Chrome 版本的应用,转而发布 Native app,这个原生的应用非常完美,但唯一的不足就是没有启动 ICON,下载之后就只有一个 tar 包,解压到任意一个文件夹之后就能使用,但是在桌面上,或者启动器中是无法找到该应用的。 和之前说过的给 Wiznote 一样,可以使用 gnome 提供的工具来给 Postman 也提供一个 ICON gnome-desktop-item-edit ~/.local/share/applications --create-new 然后填入应用图标,路径,等等就可以。然后去 Read more ...

2019-08-30 ubuntu , linux-mint , wiznote , postman , icon , launcher

最近文章

  • 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 反向代理服务。