分类
代码

Golang Web 框架 Beego 体验:一个天气网站

最近好像看到 Go 语言的文章更多了,趁着 5 月休假在家有空,也学习了一下。
基本语法很快就熟悉了,跟着这个网站 Go 语言之旅 有编程基础很容易就可以上手。
当然一些细节还是不太知道,比如怎么遍历数组、map,也是后来边做网站边学习,毕竟刚开始都是囫囵吞枣先看个大概,到用的使用自己写一遍才能加深印象。这也是为什么我要用 Golang 写一个小项目的原因。
熟悉了基本语法后,就开始看《Go Web 编程》,讲的是 Go 自带的 http server / template

分类
代码

滚动网页时固定表头

当网页的表格高度比较大时,比如超过一屏,我们希望表头能够一直显示,就像 Excel 的“首行冻结”一样。
搜索一下,看到一种思路是表头写两个,第一个只有表头,默认不显示,定位为 fixed 在顶部,第二个有表头和数据单元格。
然后滚动网页时,使用 js 计算表头是否应该显示,实时的设置可见性。

示例如下:

分类
Java

B+ 树的插入与删除(Java 实现)

上周在某公众号看到一个掘金小册的推荐,《MySQL 是怎样运行的:从根儿上理解 MySQL》。购买后看了前几篇,真的写得非常好,看到索引后的章节,讲“表空间”的一章,稍微有点吃力了,因为这一章出现了太多名词,所以暂停了往下看。作者在前面讲索引时提到 B+ 树,但由于本小册主要是讲 MySQL 因此并没有细说 B+ 树如何插入、删除,于是我就自己搜了一下。

关于 B+ 树的资料,搜索出来肯定很多。但是有些内容的质量真是低下(而且我发现必应也会在搜索结果最底部推荐广告了),不过还是被我找到了一篇写得很棒的文章:《B树和B+树的插入、删除图文详解》

这篇文章把 B+ 树的插入删除算法都写得挺详细了,而且有图例说明,强烈推荐。于是我就跟着文章的算法用 Java 尝试实现了 B+ 树这个数据结构。

分类
生活

亲手做的客家烫皮巴巴干

上周说想吃家里的巴巴干,在某宝上买了炒好的。

我也看了下,突然觉得可以自己做。无非就是解决原料和设备的问题。
原料好说,就是大米;设备的话,需要磨米浆、需要簸箕蒸。

先看了下磨浆机,直接搜,出来一堆几千块钱的用电的磨浆机,我家也有,但是太贵了,不适合我这样过家家。

分类
电脑软件

记一次愚蠢的环境变量设置

echo $#path $path

https://www.zsh.org/mla/users/2015/msg00665.html

问题:在 Ubuntu 上装了个 zsh, 然后设置 PATH 环境变量时,将 $HOME/bin;JAVA_HOME/bin 添加到 PATH 中了:
export PATH="$HOME/bin;$JAVA_HOME/bin:$PATH"
但是并没有生效。

最后发现把冒号写成了分号……
echo $#path $path
$#path 会输出 PATH 中目录个数,$path 会输出每个目录,一检查就能发现
比如 PATH=/a:/b:/c
那么 echo $#path #path 会输出:
3 /a /b /c

分类
安卓

[OnePlus]安卓Root/升级备忘

工具下载

分类
Java

远程执行 Java 代码

本文是《深入理解 Java 虚拟机》中的一个实战,看完后照着敲的代码,简单地封装了一个 Servlet, 只需引入 Maven 并配置一下这个 Servlet 就可以实现浏览器端上传 Java 代码,远程动态执行。

关于书上的这部分代码,就不贴了,大家可以直接看书,没有书的可以参考这篇文章:
http://blog.csdn.net/coslay/article/details/49564789
主要原理就是,编译好的字节码,我们把其中对 System 类的引用移花接木到我们自己写的一个 HackSystem 类上,这样,就可以拿到所有往 stdout 输出的内容了,然后显示在网页上。

分类
安卓

一加 5T 升级 Android 8

去年一加5T发布后, 刚好想换台手机. 当时用 iPhone 5s 和 Nokia Lumia 638 Windows 10, 都不太好用了, 于是换了 8G+128G 的一加. 用到现在一直很流畅. 这两天系统推送了 Android 8 更新, 还自动下载好了. 于是手贱更新了……

分类
Java

自己实现一个 Mini RPC 框架

自己实现一个 Mini 框架系列之三 —— RPC

查看本系列其他文章

自己实现一个 IoC 框架
自己实现一个 Mini MVC 框架

RPC, 远程过程调用。可以简单地理解为在一台机器上调用另一个地方的代码实现。Java 中比较著名的 RPC 框架有 Dubbo, 公司后端也主要是 Dubbo 支撑起来的。那么自己实现一个 RPC 框架可以吗?

分类
Java

JDK 动态代理的实现

我们知道,JDK 动态代理可以对接口进行代理,把接口的所有方法代理到 InvocationHandler 的 invoke 方法上。
示例如下: