一、为什么要做这个项目
想想距上次写一个完整的项目已经过了很长时间,因为一直在学习其他的知识,对SSM 知识已经有了生疏,于是就想通过这个商城项目把所有的知识都串一遍,不仅能够回复以前的知识,也可以学习到Java 后端生态圈中的一些前沿知识,比如Dubbo,Nginx 相关等。花一些时间把这个项目做一遍,丰富一下知识也是极好的。
二、项目架构分析
淘淘商城项目基于SOA 架构,目的是用于将服务层与表现层拆分成两个独立的工程,从而实现灵活的分布式部署,并且降低了代码之间的耦合度。服务层用于处理业务逻辑,对外提供服务的接口。表现层通过调用服务端的接口,用于处理用户的请求并以页面的形式展示数据。
主题架构图:
期间简单学习了一下Web service,了解了跨语言与跨平台的不同应用之间调用的过程。
Web service 相关介绍博文:https://blog.csdn.net/codejas/article/details/79593468
三、具体完成过程
2.1项目搭建
对于一个自学的人来说,搭建工程是有一定难度的,尤其是搭建自己完全不熟悉的项目框架,对于这一点只能靠自己的坚持,不断的试错,不断的总结,总会解决问题的。在刚开始搭建工程的时候,因为第一次使用IDEA 搭建聚合项目,所以第一次搭建完成之后,并没有如愿以偿的搭建成功,错误不断。果断删除项目重新搭建,对项目搭建的过程有了更深一步的理解,并搭建成功。
关于使用IDEA 搭建多继承聚合项目,可参考博文:https://blog.csdn.net/codejas/article/details/79488096
复习了一下Maven 的相关知识,在这个过程中收获是很多的,当初很多不理解的知识大概能理解了。
关于Maven 依赖关系详细介绍可参考博文:https://blog.csdn.net/codejas/article/details/79490030
IDEA 工程目录如下:
如上图,一个完整的项目被分成了四个模块。
|--taotao-parent: 顶级父工程,用于管理jar 包依赖的版本。
|--taotao-common: 通用的工具类与POJO 类。
|--taotao-manager: 服务层工程,是一个聚合工程。
|--taotao-manager-pojo: POJO 类。
|--taotao-manager-dao: 持久层。
|--taotao-manager-interface: 服务接口层。
|--taotao-manager-service: 服务接口实现。
|--taotao-manager-web: 表现层工程。
2.2实现商品查询与新增商品功能
项目搭建完成通过测试后就可以根据需求写代码了,因为项目使用Dubbo 中间件实现表现层调用服务层,所以学习了一些关于Dubbo 相关的知识,Dubbo 使用ZooKeeper作为注册中心,又大概了解了一下ZooKeeper,知道了Dubbo 的使用方法,但是具体的细节知识并没有深入了解,这一点可能要等到实际工作了才会深入了解,如果后续学习到了相关的知识,会以博文的形式分享出来。
Dubbo 简单介绍相关博文:https://blog.csdn.net/codejas/article/details/79617703
没有什么好贴的就贴一张结果图吧:
2.3首页展示与内容管理完成
首页展示与内容管理功能并没有涉及到新的知识,只是在原来的项目中新建了两个子工程,并完成相应的增删改查。
工程目录如下:
贴出一张效果图:
后续会随着进度慢慢更……