摘要: 场景 有一张得分表(score),记录了用户每次的得分,同一个人可能有多个得分。 | id | name | score | | | | | | 1 | tom | 45 | | 2 | jack | 78 | | 3 | tom | 34 | | . | . | . | 需求:找出分数最高的前5个 阅读全文
posted @ 2019-04-09 20:12 DavieTiming 阅读(10762) 评论(0) 推荐(1) 编辑
摘要: 简介 本文是需要用到hbase timestamp性质时研究源码所写.内容有一定侧重.且个人理解不算深入,如有错误请不吝指出. 如何看源码 hbase依赖很重,没有独立的client包.所以目前如果在maven中指定如下: 可以看到其会把整个hbase的源码都下载下来.这一点在查看源码上是比较方便的 阅读全文
posted @ 2019-01-20 21:08 DavieTiming 阅读(796) 评论(0) 推荐(0) 编辑
摘要: 问题 原因 目前我使用的idea是2017版本.导致其支持的antlr插件只有1.8.4.这个插件版本会使用antlr的4.7.8版本生成编译器代码.如果项目中maven依赖的antlr版本不是这个.就会如上述报错.而如果idea使用1.8.0版本的antlr插件.就会因为idea版本和插件版本不对 阅读全文
posted @ 2018-09-02 22:13 DavieTiming 阅读(2149) 评论(0) 推荐(0) 编辑
摘要: 缘起 今天去看编译模块的代码,发现实在是看不进去.究其原因,就是设计得有些混乱.这提醒了我,很多时候写代码的时候不会注意到一些设计上的问题.在阅读别人代码的时候会非常清晰地表现出来.其中有一些典型的问题. 命名之设计模式 比如使用了某种设计模式,但是命名却没有符合那个设计模式的规范.导致看了代码许久 阅读全文
posted @ 2018-06-18 19:59 DavieTiming 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1. 没有异常处理 学生时代,我编写的java代码中,很少会有try catch.最主要的原因如下: 应用的规模很小 没有不确定因素 代码可控性高 如果规模小,往往就没有复杂的逻辑链路,整个软件的分层也很浅.很多地方的问题都是"编码"的问题.其次,学生时代的作品中,往往没有复杂的组件:数据库连接本地 阅读全文
posted @ 2018-03-08 21:28 DavieTiming 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 今天遇到个有点意思的问题.特此记录. 业务场景: 做了一个页面,但是对外是挂载在京东主站上.如:www.jd.com/yifu/123456.html. 现场情况: 在本地/测试环境/预发环境中,每次点击页面之前,都要删除浏览器缓存,否则是死链. 背景知识: Chrome浏览器会自动记录http-> 阅读全文
posted @ 2017-12-25 22:09 DavieTiming 阅读(1081) 评论(0) 推荐(0) 编辑
摘要: 自己在做实验性小项目的时候,发现自己遇到一个问题:如何控制线程的"死亡"? 首先,如何开启一个线程呢? 最简单的代码: 很简单,调用.start()方法,这个线程就会启动. 那么怎样主动去停止一个线程呢?要解答这个问题,首先要考虑:为什么要结束一个线程. 理由如下: 线程是JVM宝贵的资源,有的线程 阅读全文
posted @ 2017-10-16 19:54 DavieTiming 阅读(21880) 评论(0) 推荐(0) 编辑
摘要: 一个一个开随笔太蠢了,都集合到这里吧.反正都很短 1. 失眠 看完全片。实在是无力吐槽。 结构上,简直是一团乱麻。整个影片被强行分成了两个部分。但是很明显,抗日的部分没有叙述这么长的必要。 其他的,都比较无聊。 我给6分。 2. 大护法 首先,好不好,好! 好在哪里?暗喻多. 但是不得不说,这种电影 阅读全文
posted @ 2017-09-17 12:05 DavieTiming 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 这篇文章记录我的一些思考。在工作了一段时间之后。 问题的核心很简单:到底如何返回错误信息。 学生时代,见到过当时的老师的代码: 当然,这位老师是一位比较擅长c/c++的老程序员,所以他的代码其实使用c写的。但是意思和这段代码类似。当时,我很好奇为什么要对一个方法的返回值是不是null进行判断。现在当 阅读全文
posted @ 2017-09-05 21:39 DavieTiming 阅读(2766) 评论(0) 推荐(0) 编辑
摘要: 网上看到的写法,真的是机智。当然可能有一些细节问题:UTF-8编码中不是ascii码的都会长度不一致。但是感觉还是机智的不行。 补充:事后测试了效率,在1千万行的情况下,用一个for循环会快3秒。for循环用时815ms,getBytes用时3722ms。在效率要求不是特别高的情况下,getByte 阅读全文
posted @ 2017-02-09 13:54 DavieTiming 阅读(2194) 评论(2) 推荐(0) 编辑