本文主要介绍布板的后端(服务器端)实现,布板是一个新闻订阅APP,有兴趣的小伙伴可以看看我之前的两篇文章
“创业梦”的破碎
布板的前世今生
可以对整个项目有个大概的了解。
服务器端整体分为以下五个模块
系统结构图如下:
自下而上来看,
base-web层只负责接收http请求,解析请求并分发到对应的处理模块;
base-biz是整个系统最重要的一层,负责所有的业务逻辑处理,它的内部目前只分了两层:module层类似于一个个逻辑入口,对应一类请求,并调用一个或多个manager的方法,封装返回结果,manager层则是一个个的业务逻辑层,例如:CategoryManager 就是专门管理所有和类目相关的数据增删改查,权限处理,缓存调用,等等;
base-dao即数据访问层,主要负责和数据库的交互;
base-cao是缓存访问层,在上图中未体现出来,主要是自己目前对于缓存的使用规范还不太熟悉,目前的开发经验是:缓存尽量简单使用,当然,如果你确实有一块非常复杂但又追求性能的业务需要用缓存实现的话,可以专门写一个小模块进行管理;
base-common则用来存放一些共用的常量,工具类,数据等;
服务端的开发过程是首先定义好上述一个整体框架,之后基本是按照需求来开发,自顶而下的开发方式,需要实现一个功能,定义好客户端展现方式,和服务端交互接口,服务端增加一个module,在涉及到的1到N个manager中增加逻辑处理的方法,如果涉及到数据库,再在对应的dao层中增加一个数据库操作逻辑;
由于开发过程在前期基本以功能需求为主,绝大多数的开发过程都是比较枯燥的,后续如果想起有比较好的实现细节再详细和大家分享吧。