Coding Adventure
文章平均质量分 60
onemsg 徽章
这个作者很懒,什么都没留下…
展开
-
编写一个工具, 从 DDL SQL 自动生成 POJOs
Python 让繁琐工作自动化原因每次写完 DDL SQL 再手动对应的 POJOs,太繁琐了,为什么不写个脚本自动化下呢(还可以顺带检测下自己算法能力),说干就干,这就来了。WARNING ⚠:别学我,IDEA 有 DDL 一键生成 POJOs 插件,我丫的是 VSCode 党 o( ̄┰ ̄*)ゞ算法步骤简历一个 POJO 字符串模板,可以直接填充包名、导入语句、类名、字段语句解析 DDLSQL 语句,得到类名(table name)、字段名和类型(column name and ty.原创 2021-02-08 23:25:31 · 672 阅读 · 1 评论 -
Spring Boot 转 Vert.X 随笔
最近上尝试了把一个典型的 spring boot mvc 项目(提供静态文件/RESTful服务和只依赖sql数据库)转成用 vert.x 编写,发现了一些问题,至此记下。Spring Boot web 和 Vert.X web 的结构一个普通的 Spring web mvc 项目结构类似这样:controller层: 控制url路由映射,request、session、response 的读取、写入service层: 封装了 repository 层并提供服务给 controller 层,执行原创 2020-09-18 14:33:49 · 1557 阅读 · 1 评论 -
如何多线程下载一个文件
设计把一个文件下载流分成 n 份,即 n 个线程各下载一份等待所有线程搞定,之后将 n 个文件合并为一个实例以下载 QQ2020 PC为例,大小82MB留意HTTP协议,先查看下它的HTTP response文件类型是octet-stream ,支持范围请求 Accept-Ranges,大小 86025424 字节。HTTP request 构建,关键在于 headers 的 Range 参数,比如 Range: bytes=0-1023 表示只获取文件从 0 到 1023(包括)共原创 2020-08-26 02:09:40 · 1991 阅读 · 1 评论 -
编写一个 Java 并行堆排序,快于原生JDK快排 | Java & ForkJoinTask & JUC
最近在看 JUC线程池: Fork/Join框架详解,就尝试地写一个案例尝试下。Fork/Join 的分治思想: 把大任务拆分(Fork)为多个小任务,这些小任务会在新的线程中执行,最后同步等待划分的小任务都执行结束后,获取他们的结果做一个合并(Join)操作返回。这或学有点像 Hadoop 的 MapReduce 计算框架,不过不同的是,MapReduce 的 大任务 拆分是迭代的,只能第一个Map 阶段全部走完才能继续下一个阶段Map或Reduce;但 Fork/Join 是可以递归操作的,一个小任务原创 2020-08-17 17:36:34 · 370 阅读 · 0 评论 -
实现简单的 JSON 解析Java工具类 | Java & 反射
以前学习 Java 反射 API的时候,顺手写了一个简陋的 JSON 解析类,实现了 dumps()和 loads() 方法,功能是把 Java Bean 解析成 JSON 字符串返回 和 把 JSON 字符串解析为 Java Bean 对象返回。实现非常的简陋,目前支持的 JSON 数据类型只有 string | boolean | number | array ,暂不支持嵌套的 obj...原创 2020-04-06 16:46:02 · 444 阅读 · 0 评论 -
设计模式的学习方法 | 摘自《图解设计模式》译者序
设计模式是一把双刃剑,正确的使用它可以提高系统的适应性,误用则会反过来降低系统的适应性。下面的方法有助于我们尽快的掌握设计模式。1. 了解设计模式首先通过阅读数据和文章了解设计模式。除了阅读本书(这里指图解设计模式)以外,还可以参考本书附录(自己Google就行)中介绍的许多讲解和讨论设计模式的优秀数据和文章。2. 动手体验设计模式自己动手编写示例程序,观察程序运行结果。在这个过程...转载 2019-07-06 15:33:52 · 181 阅读 · 0 评论