摘要:Lab1 启动 先 Fork 后 Clone,直接用 IDEA 打开,然后可以看到 test 文件是绿色的,右键 test 文件夹可以看到 Run 'All Tests',这样就可以运行测试用例了,至于用不用 Ant 就看情况了。 SimpleDB 架构 Lab1 实验指导中指出,SimpleDB 阅读全文
posted @ 2021-02-24 21:03 楷哥 阅读(11) 评论(0) 推荐(0) 编辑
摘要:结论 结论:不一定,存在两种可能的情况。第一种,调用了 System.exit,第二种,finally 语句位于一个线程中,但是这个线程随着主线程的终结而终结了。代码请看 example1.另外值得注意的是,即使在 try 中 return 了,还是会执行后面的 finally。 代码: 输出: 原 阅读全文
posted @ 2021-02-07 17:30 楷哥 阅读(13) 评论(0) 推荐(0) 编辑
摘要:一,前言 日常开发中经常需要在控制台输出一些信息,如果这些东西不加管理,那么很容易就被输出信息淹没。幸好,我们有日志相关的库来帮助我们格式化控制台的输出。 这篇文章将介绍如何配置 Slf4j 及其具体的实现,后面会介绍如何配置成彩色的。 二,介绍 之前看一些文章就对 Slf4j 略有所闻,搬砖的时候 阅读全文
posted @ 2021-01-27 17:18 楷哥 阅读(80) 评论(0) 推荐(0) 编辑
摘要:问题 今天开始尝试用 Java 写 http 服务器,开局就遇到 Bug。 我先写了一个多线程的、BIO 的 http 服务器,其中接收请求的部分,会将请求的第一行打印出来。 下面是浏览器发出的请求和控制台的输出情况。我们竟然收到了一个空的请求!!这是为什么呢? 我解析请求的部分代码如下。 // r 阅读全文
posted @ 2021-01-26 19:56 楷哥 阅读(103) 评论(0) 推荐(0) 编辑
摘要:一,前言 Docker 建站小记,我使用了四个镜像来搭建:nginx,certbot,mysql,gradle。欢迎访问:https://www.zzk0.top 这个网页是从 github 上找的个人主页,背景用的是 bing 的壁纸,中间有两个链接,一个指向我的 github,一个指向博客园。后 阅读全文
posted @ 2021-01-24 10:12 楷哥 阅读(272) 评论(0) 推荐(0) 编辑
摘要:一,前言 说一句大实话,“平时一直在用 Tomcat,但是我从来没有用过 Tomcat”。 “平时一直在用 Tomcat”,是因为搬砖用的 SpringBoot,内嵌了 Tomcat,每次启动程序的时候,都需要启动 Tomcat。 “我从来没有用过 Tomcat”,是因为没有专门去用过 Tomcat 阅读全文
posted @ 2021-01-16 15:31 楷哥 阅读(212) 评论(0) 推荐(0) 编辑
摘要:这篇博客介绍如何配置 NGINX 和 Tomcat 实现 SpringBoot 中带有鉴权的上传和下载静态资源 阅读全文
posted @ 2021-01-02 22:45 楷哥 阅读(147) 评论(0) 推荐(0) 编辑
摘要:一,前言 在开始看源码细节之前,首先要想好要看的问题。想好问题之后,我们该如何寻找要看的代码呢? 其实,这就好像去爬山的时候,突然想去上厕所,如果有一副地图,那么我们可以很快就找到厕所的位置。带着问题看源码也是同样的道理,如果我们知道源码每个部分的结构是做什么的,那么我们就可以很快定位代码。 这篇博 阅读全文
posted @ 2020-12-15 22:47 楷哥 阅读(253) 评论(0) 推荐(0) 编辑
摘要:一,前言 这篇博客写于 12 月 12 日,从 github[1] 上 fork 了一份 tomcat 的源代码,clone 到了本地。最近想把 tomcat 的源代码分析一下,寒假的时候有完整的时间就造个轮子。 看源码,总不能干看,边看边改,验证想法。所以这个系列从构建 tomcat 开始。首先要 阅读全文
posted @ 2020-12-12 23:39 楷哥 阅读(254) 评论(0) 推荐(1) 编辑
摘要:这是《Java 编程思想》第四版的阅读笔记,Java 版本可能有点过时了,但是思想不过时。这一章主要介绍 RTTI 和反射机制。下面的内容太过于概括,小心查看~ 思维导图 为什么需要 RTTI 一句话:因为我们确实需要在运行时获取类型信息。 RTTI,是 Run-Time Type Informat 阅读全文
posted @ 2020-12-02 21:12 楷哥 阅读(44) 评论(0) 推荐(0) 编辑