编写一个工具, 从 DDL SQL 自动生成 POJOs Python 让繁琐工作自动化原因每次写完 DDL SQL 再手动对应的 POJOs,太繁琐了,为什么不写个脚本自动化下呢(还可以顺带检测下自己算法能力),说干就干,这就来了。WARNING ⚠:别学我,IDEA 有 DDL 一键生成 POJOs 插件,我丫的是 VSCode 党 o( ̄┰ ̄*)ゞ算法步骤简历一个 POJO 字符串模板,可以直接填充包名、导入语句、类名、字段语句解析 DDLSQL 语句,得到类名(table name)、字段名和类型(column name and ty.
实现一个RPC框架,过程中我的思路与收获 oneRPC想通过写一个RPC框架,来锻炼自己的网络编程和工程设计能力,同时这个project也作为自己本学期学校的课题设计。代码放到了 GitHub 上了,自己想着写点东西,记录下实现过程中自己得到的收获,同样也很喜欢能与别人分享下自己的见解。(本人java语言)GitHub: https://github.com/onemsg/oneRPC博客今天先定个开头,今后有时间详细地更新思路自己的项目/实习经历并不丰富,并没实际地使用过任何rpc框架,只是看过不好介绍rpc的文章,看过 dubb
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 层,执行
如何多线程下载一个文件 设计把一个文件下载流分成 n 份,即 n 个线程各下载一份等待所有线程搞定,之后将 n 个文件合并为一个实例以下载 QQ2020 PC为例,大小82MB留意HTTP协议,先查看下它的HTTP response文件类型是octet-stream ,支持范围请求 Accept-Ranges,大小 86025424 字节。HTTP request 构建,关键在于 headers 的 Range 参数,比如 Range: bytes=0-1023 表示只获取文件从 0 到 1023(包括)共
Event Driven 模式详解与一个设计实现 | Java 昨天想写个Event Driven模式,看了不少资料也成功写出了一个实现,先简单说下,以后细聊Event Driven 事件驱动模式Event Bus 模式 传递消息的,复杂的是在主机间传递Event Driven 模式 处理消息的,通常与 Event Bus 工作在一起,复杂的是实现消息通信模式Reactor 模式 同 Event Driven 模式,只是关注 IO 事件消息通信模式发布/订阅 模式 消息被发布到一个address/topic,也就是说派发消息到所有注册在这个addres
编写一个 Java 并行堆排序,快于原生JDK快排 | Java & ForkJoinTask & JUC 最近在看 JUC线程池: Fork/Join框架详解,就尝试地写一个案例尝试下。Fork/Join 的分治思想: 把大任务拆分(Fork)为多个小任务,这些小任务会在新的线程中执行,最后同步等待划分的小任务都执行结束后,获取他们的结果做一个合并(Join)操作返回。这或学有点像 Hadoop 的 MapReduce 计算框架,不过不同的是,MapReduce 的 大任务 拆分是迭代的,只能第一个Map 阶段全部走完才能继续下一个阶段Map或Reduce;但 Fork/Join 是可以递归操作的,一个小任务
异步编程,搭建一个简单信息共享应用 | Vert.X-Web & Bulma simple-info-sharing 简单信息共享服务介绍这是一个简单的信息共享平台,信息具体地指其实是html、pdf这些能直接被浏览器解析的文件,信息上传到平台后,其他人可以直接查看/浏览。使用异步编程模式。功能前端由 Vue、Bulma 构建上传文件,支持格式: html、pdf、zip压缩文件(包含html和css、图片的)查看可访问的所有文件添加、删除路由映射后端由 Vert.X 构建文件管理:解压文件、删除文件、保存文件、读取所有文件路由映
豆瓣新书速递数据爬取与简单数据处理 | 豆瓣爬虫 & python & pandas 豆瓣新书速递数据爬取与简单数据处理概要数据爬取爬取豆瓣平台提供的数据,存储到本地 json 文件。数据说明URL豆瓣新书速推 HTMLhttps://book.douban.com/latest?icn=index-latestbook-all豆瓣单条图书查询 RESTful APIhttps://api.douban.com/v2/book/:id?apikey=0df993c66c0c636e29ecbb5344252a4a使用 urllib3,获取
搭建一个 COVID-19全球实时趋势 应用 COVID-19全球实时趋势项目简介一个展示 COVID-19 全球实时趋势的 web 应用,基于 Vue/Bulma/Echarts 和 Flask 构建。参考: www.worldometers.info/coronavirus/数据源: NovelCOVID/API- 查看全球- 查看USA- 查看无效国家功能特性查看全球的实时疫情趋势查看特定国家的实时疫情趋势可直接点开 HTML 文件浏览,虽然缺少路由跳转功能URL路径/ GET:COVID-
短网址服务系统 | Vert.X Web & Redis & 异步编程 短网址服务系统一个短网址服务系统,可通过 RESTful API 来生成新短网址,短网址与原网址的映射存储在 Redis 数据库中,用户请求短网址时会被重定向到原网址。后台使用 Vert.X-Web 和异步编程。短网址生成使用原网址到62进制映射的方案。短网址服务原理可参考 短网址(short URL)系统的原理及其实现 | 思否RESTful API 说明:POST /api/create?key=0834 {‘srcUrl’: ‘source url’} | 返回提交原网址的 短网址{"s
Udemy 课程数据可视化 | Pandas & Echarts & Echarts-wordcloud 对Udemy在线网络课程进行数据分析与可视化展现,数据包含了2011年到2017年的所有课程数据,每个课程数据包含了课程名称、价格、学科、评论数量、订阅数量等信息。用到了 pandas 和 echarts。数据来源:UdemyCourses-Kaggle开发流程利用JupyterNotebook对数据进行预处理、EDA和导出数据加载数据,查看数据基本信息,必要的数据预处理部分 探索性数据分析,设定问题,找出数据包含的信息、 同步与可视乎阶段进行,根据Echarts...
基于 Taste 的电影推荐系统 | REST web 服务 & Vert.X & mahout videos-recommender一个简单的基于 Mahout 库的电影推荐系统,使用了 Redis 作为缓存,Vert.X 构建 web 服务以提供 RESTful 服务。源码可从我的 GitHub 下载: onemsg/some-project/videos-recommender说明用到的数据ml-20m系统架构和流程模块数据源数据一部分加载到Mahout的类中,生成...
采集 58同城 房产数据信息 | Java爬虫 & Jsoup 一个数据采集系统(通俗的说就是爬虫),用来采集 58同城 房产 | 郑州中的房屋数据。使用 Java 语言和Jsoup库编写,这里分享给大家。最后采集的数据结果CSV文件保存的,如下所示说明功能都集中在 spider.get58包的如下4个类中:App: 应用驱动程序,控制爬虫的启动/运行逻辑和日志打印等; CrawUtil: 爬虫爬取单元,爬取特定的 url 返回 h...
实现简单的 JSON 解析Java工具类 | Java & 反射 以前学习 Java 反射 API的时候,顺手写了一个简陋的 JSON 解析类,实现了 dumps()和 loads() 方法,功能是把 Java Bean 解析成 JSON 字符串返回 和 把 JSON 字符串解析为 Java Bean 对象返回。实现非常的简陋,目前支持的 JSON 数据类型只有 string | boolean | number | array ,暂不支持嵌套的 obj...
Spring / Spring Boot Testing | 笔记 记录Spring Boot 开发中的测试手段。???? 添加 spring-boot-starter-test 依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId...
JPQL & HQL & Spring Data JPA @Query | 最全知识清单 简单介绍JPQL: JPA的一部分,是一个平台无关的面向对象查询语言,通过类似 SQL 的语句进行 JPA 查询,这在构建动态查询时非常有用。样子SELECT u FROM User u WHERE u.status = :status and u.name = :nameHQL: Hibernate 的面向对象查询语言,它是 JPQL 的超集,一句 HQL 不可能一定是 JPQL...
二叉树的遍历打印,如此简单的方法 | 数据结构 | 树 | Java 主体今天刷 leetcode 题时,偶然发现了一个简单好用的方法来打印树——重写Java的 toString() 方法: public String toString() { if (left == null && right == null) { return String.format("[ %d ]", val); ...