# springboot的学习汇总 **Repository Path**: haasaki/springboot-learning-summary ## Basic Information - **Project Name**: springboot的学习汇总 - **Description**: 现在在实习中,想将自己学到的一些关于springboot的东西,比如springboot与dubbo的整合,还有springboot集成mybatis,redis,RabbitMq等等企业相关实战写在该项目可以作为大家练习参考,希望能对大家有所帮助,目前已经写了一个springboot-dubbo-mybatis的一个小项目在里面,后续有时间会持续将自己学到的写进去。 - **Primary Language**: Java - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2021-12-09 - **Last Updated**: 2023-03-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # springboot的学习汇总 #### 介绍 现在在实习中,想将自己学到的一些关于springboot的东西,比如springboot与dubbo的整合,还有springboot集成mybatis,redis,RabbitMq等等企业相关实战写在该项目可以作为大家练习参考,希望能对大家有所帮助,目前已经写了一个springboot-dubbo-mybatis的一个小项目在里面,后续有时间会持续将自己学到的写进去。 #### 软件架构 软件架构说明 ## **数据库 Order** ### **商品表 order_product** ![image-20211129104132649](C:\Users\EDY\AppData\Roaming\Typora\typora-user-images\image-20211129104132649.png) ### **订单信息表 order_info** image-20211129103955834 ### 订单条目表 order_item ![image-20211129104054201](C:\Users\EDY\AppData\Roaming\Typora\typora-user-images\image-20211129104054201.png) ## 需求:模拟用户下单过程 1、新增3个商品,苹果手机,华为手机,小米手机** 2、修改小米手机为oppo手机 3、删除oppo手机 4、查询所有商品,按照商品名称模糊搜索 5、查询某个商品的详情 6、用户下3个单:购买了若干个苹果手机,若干个华为手机,订单状态为待付款;**** {1.先模糊查询苹果,华为手机商品,拿到id 2.生成空订单信息 3.在通过商品id插入订单条目到订单信息,默认为待付款 4.测试 √ (插入条目时如果传入的3个参数相同时,不应该是插入错误,而应该在原先的条目中,将商品数量叠加,其他金额计算没问题) } 7、用户付款:修改订正状态为已付款;**** √ 8、用户取消订单:修改订单状态为已取消;****√(问题:如果订单取消,是否要删除订单信息?) 9、查询订单详情:包括订单主要信息和订单条目,商品名称,总金额等 10、查询订单列表:支持模糊搜索****√(感觉像id数字类没必要模糊搜索,直接用=,反而是name商品名称需要模糊搜索,时间内模糊搜索应该取时间段(具体怎么写sql我也不知道,然后金额模糊搜索应该也是范围内的) ## 项目结构 #### **1.vo(View object):**视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 **2.DTO (Data Transfer Object)**:数据传输对象,泛指用于展示层与服务层之间的数据传输对象。 **3.Do (Domain object)︰**领域对象,从现实世界抽象出的有形或无形的业务实体。 **4.Po (Persistent Object)持久化对象,**对象属性和持久层(数据库)的表字段形成一对一映射关系。 **5.PoJo (Plain Ordinary Java Oobject)**:无规则简单java对象,是一个中间对象,可以转化为PO,DTO,VO。 ![image-20211130092202485](C:\gitcode\practicedemo\springboot-learning-summary\images\image-20211129104132649.png) 用户发出请求(可能是填写表单),表单的数据在展示层被匹配为VO。 ·展示层把VO转换为服务层对应方法所要求的DTO,传送给服务层。 。服务层首先根据DTO的数据构造(或重建)一个DO,调用DO的业务方法完成具体业务。 ·服务层把DO转换为持久层对应的PO(可以使用ORM工具,也可以不用),调用持久层的持久化方法,把PO传递给它,完成持久化操作。 对于一个逆向操作,如读取数据,也是用类似的方式转换和传递,略。 #### 安装教程 1. 2. 3. #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)