一个六年经验的python后端是怎么学习用java写API的(1)设定场景,选择框架dropwizard

简单介绍

我是一个远程工做者(远程3年),从业六年一直在作python web后端相关的开发,最近闲来无事想看下Java是怎么写API的,知乎的一句话介绍贴在这里,大概介绍下笔者的经历。前端

不自由工做者 | 原子钟 SOHO | 知乎填坑一年 | 学堂在线造轮子两年

场景选择

以前带新人的时候通常是让新同窗经过修bug熟悉项目熟悉语言,完成一个明确目标的任务是最快学习一种技术的手段,单纯的看语言或者框架的start文档效率较低,带着问题写代码是最高效的。java

toy项目最蛋疼的就是产生基础数据,也就是物料,本身api建立假数据并很差看也不实用,数据自动产生的话最简单的方法就是写个爬虫抓别人页面。学习的角度来看不用起定时任务,主动实时抓取便可。python

那么作什么事儿呢?mysql

有时候会有这样一种场景,当你想作一个xx号的时候,新帐号没有创做资源、没有流量,有时候为了混脸熟会作一个搬运别人资源的事情,也就是抄。抄袭历来都是不可取的,可是有时候确实是须要作这些事情。git

假定如今要作一个垂直的我的微信鸡汤号(非公众号),天天最少发五篇文章,领域选定后若是本身写不出来,天天也要搬运同行内容,而且搬运过来的文章上面能够加上跟本身业务内容相关的一些引流手段,例如文章头部底部添加本身的淘宝店、手机号等等。github

未命名文件.png

那么任务拆解

  • 抓取微信公众号文章到本身服务器,替换微信图片作第一步的清洗。这是由于你直接把微信文章仍在本身服务器让别人打开的时候,微信图片发现若是域名不对会显示本图片来自微信云云,因此须要洗一遍。
  • 写个编辑器,将清洗的文章本身在洗一遍(可选)。例如文章内自己就带了原做者的一些推广图片、文章想要删掉。
  • 写个简单的CMS,能够管理抓取的文章上下架,单篇文章编辑,分享的时候能够选择分享的头图,分享的一句话。
  • CMS简单的用户系统和权限系统。

肯定技术选型

  • 文章抓取、一次清洗入库用 python + django 提供一个实时接口的服务,一是由于python最适合干这件事,二是自己我想关注的是java写API,java语法的大概的熟练程度停留在六年前上学图书馆水平,基本已经全还给图书馆了,这个模块用java写太过于浪费时间。
  • 数据库 mysql,没什么聊的。
  • cdn 七牛,随便选一家有免费空间相对较长免费流量的cdn作开发。
  • java框架 dropwizard, 选择这个很简单,当你想学一个技术的时候,github搜索awesome-xxx。awesome-java 的restful api framework第一个就是他。
  • jdk 8.0,随便选的。
  • gradle java构建工具,大概看了下awesome java,maven还须要写xml,gradle不用并且包管理能够用maven。

代码

  • Pirate - 经过接口实时爬取微信文章的python服务 pirate
  • Parrot - Java RestFul API parrot
  • Potato - 前端项目。待定,并非本次学习重点。

未命名文件 (1).png

接下来

  • todo: 一个六年经验的python后端是怎么学习用java写API的(2)Extracter,微信文章抓取清洗入库
  • todo: 一个六年经验的python后端是怎么学习用java写API的(3) RestAPI,dropwizard 的第一组API
相关文章
相关标签/搜索