摘要:
问题引出 个人习惯在白天的时候使用亮色系的风景壁纸,但是在晚上的时候就显得太刺眼了,需要更换为暗色系的壁纸。 每次手动更换不免觉得费心,于是便想写一个脚本自动化这个过程。 解决思路 在Windows系统下,写一个python脚本更换壁纸,并设置在开机时,以及每一个小时自动触发该脚本。 该脚本可根据当 阅读全文
摘要:
背景 在开发中,遇到这种情况,多个线程同时工作,突然一个线程遇到了fetal的错误,需要立即终止程序,等人工排查解决了问题之后重新启动。但是这样会有一个问题,程序终止时,其他线程可能正在进行重要操作,比如发一个message到另一个模块,并更新数据库状态。突然终止,可能会让这个操作只完成一半,从而导 阅读全文
摘要:
什么是数据库表分区 数据库表分区(Partitioning),即将一个大的数据表(Table)及其索引(Index)切分更小的部分。这些分区可以有不同的名字,甚至是存储方式。 Oracle Partitioning Overview 为什么要做分区 存储均衡:可以分摊大量数据到不同存储介质中。 方便 阅读全文
摘要:
问题 在工作中偶尔会遇到这样的问题:SQL script重复执行时会报错。 理想的状态下,SQL script跑一遍就够了,是不会重复执行的,但是实际情况往往很复杂。 比如Dev同学在开发时在A环境把他写的那个脚本单独执行了一遍,而在下一个测试周期的时候,测试同学又在A环境把所有DB脚本都执行了一遍 阅读全文
摘要:
背景 在开发完成,数据验证的过程中,需要对两个非常大的表进行query,运行了十几分钟都跑不完。如下: select * from big_a a, big_b b where a.some_id = b.some_id and a.value_one = 'a_111' and a.value_t 阅读全文
摘要:
什么是方法引用 我们知道了什么是Lambda Expression以及如何使用,那么,Method References又是什么呢?Oracle Java Docs中这样说: They are compact, easy-to-read lambda expressions for methods 阅读全文
摘要:
默认情况 - 双等号==,比较的是内存地址。 - equals(),默认比较的是内存地址。 - hashCode(),默认返回的是object的内存地址。 String中方法改写的情况 经常会遇到需要override equals()和hashCode()的情况,比如String就改写了这两个方法。 阅读全文
摘要:
什么是Lambda Expression 对于Lambda Expression,我的理解是,它是一个函数表达式,如下: (int x, int y) -> x - y 符号左边定义了函数的输入,右边定义了输出。在上面的例子中,我们定义了一个关于x,y的函数,这个函数的作用是计算两者之差。那么它的类 阅读全文
摘要:
今天要讲的是以下概念: - 控制反转 :IoC, Inversion of Control 什么是控制反转 先说正常的控制流程是怎样的: 比如我写了一个方法`process()`,在程序中的某处,我会自己调用这个方法,完成一些操作。如下示例:获取了`input`参数,然后传给`process()`进 阅读全文