Spring Boot实战:从0开始动手搭建企业级项目
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 学习Spring Boot的系统性建议

针对前文涉及的问题,笔者会给出一些建议,希望读者在学习本书之后能够掌握Spring Boot基础开发知识,同时也能够知晓其源码实现原理,并根据书中的案例掌握实战项目的开发技巧,最终把这些技巧和知识灵活地运用在实际的企业项目开发中。

1.2.1 基础实践、源码分析、项目开发

想要掌握Spring Boot技术栈,基础实践、源码分析、项目开发三个步骤都不可或缺,这也是笔者整理资料写作本书的目的。

本书所选择的知识点都比较实用,且源码完备,在理论知识介绍完之后都配有相应的源码案例可以下载到本地。建议读者在阅读时能够参考书中提供的源码,自己动手实现相关功能点,或者直接运行书中给出的源码。不管是选择哪种方式,读者都一定要动手操作,而不是翻一翻书就完事。本书主要目的就是加强读者的动手能力。

本书的章节按照“基础实践、源码分析、项目开发”三个步骤展开,知识结构合理。首先,由Spring Boot技术栈介绍和基础环境搭建讲起,有多个章节涉及Spring Boot技术栈的相关知识。

其次,理论结合源码讲解,由Spring Boot的基础使用讲到Spring Boot的源码解读,包括Spring Boot整合Thymeleaf制作页面、Spring Boot整合MyBatis操作数据库、Spring Boot启动流程的源码分析、Spring Boot自动配置流程讲解等。

最后,商城项目的开发实战,主要包括商城后台管理系统的开发和商城端的功能开发。在实践过程中将对项目功能进行拆分,使用Spring Boot分别实现各个独立的功能点,比如图片上传功能、分页功能、登录功能、验证码功能等,并整合多个独立的基础功能到一个完整的功能模块中,最终完成各个功能模块的功能和交互,开发出一个完整的商城系统。

1.2.2 如何开发和统筹一个完整的项目

帮助读者获得开发和统筹一个完整项目的能力是笔者写作本书的一个重要目标。笔者将通过技术栈的详细讲解、多个功能模块的开发实践,并结合在实际项目开发中的产品流程来达成此目标。

一个可以实操练手的完整项目,再配备上详细的技术讲解手册,是提高开发人员技术水平最高效的方式。围绕Spring Boot技术栈,笔者将给读者呈现一个大型项目十分完整的开发流程。实践项目包含一个内容展示系统和一个后台管理系统,其中功能模块包括登录认证模块、管理员模块、商品发布和管理模块、分类管理模块、搜索模块、订单管理模块、会员管理模块等。本书既能让读者得到一个完整的实操项目,也能让读者加满Spring Boot技能点,从而帮助读者提升专业技术能力,为升职加薪提供知识保障。

一个小的demo项目做起来并不复杂,它功能单一,也没有过多复杂的知识点需要掌握,跟着教程能很快完成。但是开发和统筹一个完整的项目则不同,它所涉及的知识点庞大而复杂。

1. 功能模块齐全

一个完整的项目一般分为后台管理系统和内容展示系统(前台网站),而一个完整的系统可以纵向拆分出很多个功能模块。后台管理系统包含管理员登录、身份认证、菜单设置、商品管理、订单管理、文件上传及管理、富文本编辑器整合、系统设置、数据统计及常用的交互功能等模块。而前台网站包括首页门户、商品分类、新品上线、首页轮播、商品推荐、商品搜索、商品展示、购物车、订单结算、订单流程、个人订单管理、会员中心、帮助中心等模块。实战项目所涉及的模块和技术如图1-2所示。

图1-2 实战项目所涉及的模块和技术

2. 涉及的技能点庞杂

开发和统筹一个完整的大型项目需要开发人员了解不同的技术或框架,比如常用的前端页面模板和基本的Web开发知识、后端开发技术框架(Spring Boot、模板引擎、ORM框架)、服务器基础设施(Shell命令、Nginx、MySQL)等,都需要开发人员全局考虑和布置。

大部分开发人员独自开发一个完整的项目是很费力的。这不仅考验着开发人员的技术储备深度,更考验着开发人员技术使用的熟练度,同时对于开发人员的系统设计能力也有较高要求(系统切分、功能点设计、页面结构和交互优化等)。

虽然开发大型项目比较复杂,但也不是完全无法实现。只要开发人员计划合理、选用有效的解决方案就可以完成这项任务。业内流行的一个解决方案就是“拆”,化繁为简,将大项目拆解成若干个小项目,大系统拆分出若干个功能模块,大功能拆解成若干个小功能,之后再对各个环节或者各个功能做具体的实现和完善。当开发人员将这些各个击破并全部完善的时候,一个完整的项目也就逐渐展现在眼前了。

1.2.3 其他建议

在本书中,笔者尽可能对重点知识进行全面讲解,不过囿于本书的篇幅和定位,在内容上肯定有所取舍。本书的定位是实战项目类型的书,会更偏向实战介绍。这里笔者再给出一些建议,以便读者有一个更好的学习体验。

(1)遇到任何问题,先尝试自己解决,实在不行再寻求帮助,这样有助于提升自己独立解决问题的能力。

(2)善于做笔记,看到好的文章或者解决问题的好办法,一定要做好笔记,避免自己犯同样的错误。

(3)IT技术的更新迭代非常快,一定要关注行业资讯,及时更新自己的知识。同样,流行的技术框架的版本迭代也很快,要学会查看官方文档,获取最新的知识和材料,这样才能更有效提升自身技术水平。

(4)使用正确的方式进行提问。对于自己无法解决的问题,可以尝试向别人提问,在提问时尽量提供充足的信息,把遇到问题的过程说清楚,可以附上错误日志、页面截图、录屏等内容,千万不要上来就问“在吗?”“项目404了怎么解决?”

(5)开发人员一定要多动手实践、多写代码、多做练习,看了不等于会了,只有把代码编写出来才算真正掌握了。