接下来,就要正式开始我们的项目了,基于springboot的博客系统。
1. 架构设计与分层
目前,比较常用的、典型的应用软件倾向于使用三层架构,即表示层、业务层和数据访问层。
( 1 ) 表示层:提供与用户交互的界面。GUI (图形用户界面)和Web 页
面是表示层的两个典型的例子。需要HTML 、css 、JavaScript 等之类的前端技能.
( 2 ) 业务层: 也称为业务逻辑层,用于实现各种业务逻辑。如处理数据验证,
根据特定的业务规则和任务来响应特定的行为。
( 3 ) 数据访问层:也称为数据持久层,负责存放和管理应用的持久性业务数据。
而我们接下来要做的项目也是基于三层架构的;
1. 表示层
表示层提供与用户交互的界面,分为Controller (控制器)和View(视图) 。
2. 业务层
业务层也称为业务逻辑层,用于实现各种业务逻辑。例如,处理数据验证,根据特定的业务规
则和任务来响应特定的行为。
MVC 中Model (模型)涵盖的范围比较广,如Entity (实体) 、VO (值对象) 、Service (服务)
都可以称为领域模型的一种。
3. 数据访问层
数据访问层也称为数据持久层,负责存放和管理应用的持久性业务数据。数据访问层可以用
Dao 或Repository 来表示。
而我们的博客系统结构如下:
博客系统主要由“博客系统”和“文件管理系统”两个子系统组成。
1. “博客系统”提供博客系统常见的功能,注册博主、发博客、评论、点赞、全文检索等;
2. “文件管理系统”用于博客系统中所设计的文件的管理,这些文件包括上传的头像,博客正文中的插图等
“文件管理系统”提供了RESTful API ,方便“博客系统”来调用。
数据存储的方式采用了不同的数据库系统
( 1)关系型数据库: 作为传统的数据存储方式,系统中的核心数据都是通过关系型数据库来存储的。
MySQL 作为开源的大型数据库,是互联网应用的首选。
H2 是内存数据库,在Java 应用中可以方便作为开发阶段数据存储方式。
( 2 ) MongoDB : 是流行的NoSQL 数据库。在“文件管理系统”子系统中, Mo ngoDB 承担着
存储小型文件的职责。
( 3 ) Elasticsearch : Elasticsearch 自带了NoSQL 数据的存储,用于全文搜索时的数据本文和索
引的存储。
集成Bootstrap
Bootstrap 是比较受欢迎的HTML 、css 和JS 前端框架,用于开发响应式布局、移动设备优先
的Web 项目。
Bootstrap 使用了一些HTML5 元素和css 属性。为了让这些正常工作,需要使用HTML5 文档
类型 ,因此,在使用Bootstrap 项目的开头包含下面的代码段:
...
为了让Bootstrap开发的网站对移动设备友好,需要在网页的head 中添加viewportmeta 标签,
Spring Boot 中集成Bootstrap 及常用前端框架。
下载BootStrap和jquery
bootStrap点击打开链接
jQuery点击打开链接
将Bootstrap 与jQuery 集成进顶目。
在项目的resources/ static 目录下分别建立css 、js 、fonts 三个目录, 其中,将Bootstrap解压后的和jQuery
发布包中的样式文件、js 脚本文件、字体图标文件放置于上述相应的目录下
得到