项目环境及技术
学习环境:
- Intellij IDEA 2018.1.3
- 阿里云ECS或本地Linux虚拟机,操作系统centos 7.4
- MySQL5.6数据库,Redis4.0.1缓存,消息队列rocketmq4.5,phantomjs无头浏览器
技术储备:
- 了解SSM、SpringBoot等框架
- 熟悉Linux基本命令
- 了解MySQL常用命令
- 了解Redis常用命令
项目框架设计
数据层:
- 事务@Transcantional注解的处理方式—表示处于一个事务当中,若一个事务中有任何一个步骤失败,事务就会回滚
- 数据接入层数据Dao
- 本地缓存、集中式缓存在商品详情页的应用,提高流式读取的效率
整个流程是:
整个页面基于HTML、CSS,然后基于JavaScript的jQuery库发送了一个动态交互的请求,给接入层controller进行通用处理,然后我们基于SpringMVC的controller层会向业务层调用相应的服务,
业务层会调用数据层的Dao,通过事务管理数据DaoMapper的方式将数据的增删改查落入到数据库中,最后到本地电脑中
数据模型(Data Object):借助于Mybatis的ORM操作将关系型数据库的表结构,通过XML的方式,定义成Java的Object结构
领域模型(Domain Model):具有一个对象的生命周期(创建、更新、删除、消亡),它可以和数据模型组合,比如用户对象是一个领域模型,它是由用户基本信息+用户密码信息两个数据模型共同组成的。
贫血模型:项目里的用户对象就设计成贫血模型:指的是拥有各种属性信息和get、set方法,但是不包含有登陆、注册等功能
ViewObject:与前端对接的模型,供展示的聚合模型