最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

基于springboot的博客网站的设计与实现

来源:动视网 责编:小OO 时间:2025-09-24 11:01:16
文档

基于springboot的博客网站的设计与实现

科学技术创新2019.331概述博客网站是互联网时代的产物,是人们寻求社会交流,精神寄托的容器。在互联网时代的发展中,各种各样的新事物,新产品改变了社会原有的社交结构,博客系统就是其中之一。它通过互联网,将想要分享个人信息,寻求同好的人构造成了一个全新的互联网角色———博主。在博客中,博主可以按照自己的需求,构建出个人空间,体现出博主个人的个性与需求。另一方面,博客的浏览者,需求是在网络博客中获取所需信息,学习所求知识。博客系统本质上就是一个社交系统,让一个圈子的人可以互相理解交流,搭建了一个
推荐度:
导读科学技术创新2019.331概述博客网站是互联网时代的产物,是人们寻求社会交流,精神寄托的容器。在互联网时代的发展中,各种各样的新事物,新产品改变了社会原有的社交结构,博客系统就是其中之一。它通过互联网,将想要分享个人信息,寻求同好的人构造成了一个全新的互联网角色———博主。在博客中,博主可以按照自己的需求,构建出个人空间,体现出博主个人的个性与需求。另一方面,博客的浏览者,需求是在网络博客中获取所需信息,学习所求知识。博客系统本质上就是一个社交系统,让一个圈子的人可以互相理解交流,搭建了一个
科学技术创新2019.33

1概述

博客网站是互联网时代的产物,

是人们寻求社会交流,精神寄托的容器。在互联网时代的发展中,

各种各样的新事物,新产品改变了社会原有的社交结构,博客系统就是其中之一。它通

过互联网,将想要分享个人信息,

寻求同好的人构造成了一个全新的互联网角色———博主。在博客中,博主可以按照自己的需

求,构建出个人空间,体现出博主个人的个性与需求。

另一方面,博客的浏览者,需求是在网络博客中获取所需信息,学习所求知识。博客系统本质上就是一个社交系统,让一个圈子的人可以互相理解交流,搭建了一个互相学习的平台。因此该平台对互动和数据的实时性都提高了较高的要求。但是现有博客系统由于历史原因和技术原因,一般具有很大的局限性。首先从用户

的角度来说,页面美观度普遍不高,

用户体验较差。其次从博主的角度来看,管理数据非常困难低效,网站的运营和维护难度大,学习成本高。难以满足当今时代背景下的浏览和管理需求。因此,在互联网时代,使用新技术的开发的博客系统来解决以上

问题是符合时代发展潮流的,具有鲜活生命力的,

有高度的可用性和现实性的,具有广阔的市场前景。

2系统关键技术概述

本系统的实现选用目前最流行的Springboot 框架作为后台框架,配合Shiro 安全框架和hibernate ORM 框架。前端选用JS+HTML+angularJs 实现,整体系统架构为前后端半分离。

2.1SpringBoot 框架的简介与作用SpringBoot 就是Spring 框架的扩展,它消除了设置Spring 应用程序所需的复杂例行配置。从字面理解,SpringBoot 帮助开发

者快速搭建Spring 框架。其理念是约定大于配置

(convention over configuration )。其最大的作用就是让文件配置,开发,项目

发布与测试调试变得简单,简化了Spring 中繁琐的配置文件,

同时它还与海量的外围框架进行了集成,

使得软件开发站在了巨人的肩膀上。

Springboot 目录结构中有四大主要部分:

a.Controller 即控制器,是将业务校验,

转发的地方。承担起响应前台所提出的请求的功能。也是整个后台代码的中枢。

b.Service 即服务层,该层实现业务逻辑,

然后在Controller 内调用。起到了承上启下的作用。

c.Dao 中实现了Service 层中业务逻辑的具体实现,其表现为操作数据对象。

d.Entity 即实体类,是数据库数据实体化后的产物,Dao 层中操作的数据对象即为该对象,对该对象的增删查改操作映射到

数据库里即对数据表数据的增删查改。

2.2Apache Shiro 安全框架

什么是权限管理?权限管理包括用户认证和授权两部分。因此本项目引入了Shiro 安全框架,它可以帮我们完成:认证,

加密,授权,会话管理,与web 集成,缓存等。它不会去主动去维护

用户与权限,而是要求我们自己设计后通过相应的接口注入。

2.3前后端半分离思想

前端负责开发页面,通过接口(Ajax )获取数据,

采用Dom 操作对页面进行数据绑定,最终是由前端把页面渲染出来。这也

就是Ajax 与SPA 应用(单页应用)结合的方式。

核心思想是前端HTML 页面通过AJAX 调用后端的RESTFUL API 接口并使用JSON 数据进行交互。选用前后端半分离的架构主要原因是因为

该架构既满足了代码与页面分离的需求,

又不至于太过复杂,实现起来成本较低。

2.4Hibernate ORM 框架及其作用

ORM (ObjcetRelativeMapping),ORM->对象关系映射.ORM 关注是对象与数据库中的列的关系,ORM 思想使得程序员理解数据库的形式发生了变化。

Hibernate 通过将POJO 与数据库建立映射关系。

让数据库的内容都变成对象,使程序员使用操作对象的思维来操作数据库。它增加了对数据库的可移植性。在非常方便的情况下完成数据的持久化,其强大的功能也可以使系统性能保持在一个高水平。

2.5MVC 模式MVC (MODEL-VIEW-Controller )模式,就是模型-视图-控

制器模式。其最为重要的特点就是两种分离。

视图与数据模型分离与视图与表现逻辑的分离。其中模型层就是数据模型,视图层就是用户可见的页面,控制层提供了页面流转的控制,是模型层和视图层的中介,负责将数据分发给页面,使得数据在页面上显示出来。在使用MVC 模式的项目中,代码将不再混杂在数据

展示页面中,大大提高了项目的合作性和可维护性,

也使得项目结构更加的合理。

2.6AngularJS

AngularJS 在本项目中主要用于数据的双向绑定和发送$http 请求用于返回数据结构。$http 是AngularJS 中的一个核心服务,用于读取远程服务器的数据。本项目通过发送$http 请求,请求后台RESTFUL 接口来得到返回的数据。

3开发语言与开发工具

Java 语言。它不依赖于任何一个操作系统,

可移植性强。具有简单性、面向对象、分布式、

健壮性等特点。JDK 是Java 语言基于Springboot 的博客网站的设计与实现

罗路腾王贵鑫

(温州商学院信息工程学院,浙江温州325035)

摘要:随着互联网的飞速发展,人类已经进入了信息时代,在这个时代,

展示个人魅力,分享社会工作学习的经验,进行网上的社交活动的需求日益增长。但是由于技术等因素,人们渴望有一个展示自我的平台。

因此开发一款界面美观,功能使用,可维护性强的博客网站具有非常重要的意义。该文主要包括游客的前台博文浏览,

文件下载等功能,后台管理员登录,博文的增删查改等功能。该博客系统能够实现博文与博主想分享内容的实时发布与管理,

用户可以在非常友好美观的界面上完成博客的各种功能,能够使用户的浏览有着良好的体验,同时也能满足博主的个人展示与社交功能。

关键词:Springboot ;博客网站;

设计中图分类号:TP393.092文献标识码:A 文章编号:2096-4390(2019)33-00-03--

2019.33科学技术创新

的软件开发工具包(SDK)。本系统使用的是Java SE 9版本。

Json 数据传输格式。是一种轻量级的数据交换格式。

易于人阅读和编写。JSON 目前也是使用最广的数据传输格式。

广泛运用于计算机开发的方方面面。

IDEA 全称IntelliJ IDEA ,是一款编程开发的IDE 环境,

可以进行多种语言的编程与运行。其最大的特色是丰富的插件拓展和友好的用户界面。使用IDEA 开发可以大幅度提高开发效率。

4博客网站主要架构设计与实现

博客网站是一个界面美观,操作方便的社交平台。

前端模块的主要功能是游客可以对博文,

相册进行浏览。在成为本站会员后还可以对博文进行留言,或者对已有留言进行回复。除了

博客都应具备的基础功能外,在资源下载页面,

已登录用户可以对博主进行分享的资源进行下载。除了丰富的前端模块功能外,在后台模块,本系统对数据的管理可谓大道至简。管理员能对前端模块的数据进行实时的修改更新,在更新后数据能实时反应到前端模块中的各个项目中,保证数据的时效性。除此之外,本系统提供友好的图形化统计界面,在需要统计网站数据

时,管理员可以通过图形化的统计页面,

直观明了的看到网站的各个模块的实时数据,并在想要导出数据时能生成Excel 报表。

4.1博客网站主要功能模块

主要功能模块分为前端模块和后端模块,系统功能如下所

示:

a.用户的注册与登录。用户要进行下载和回复操作时需要首先检测是否登录,如果没有登录系统将会提示用户登录,

如果用户点击页面内的注册按钮,在输入正确信息并通过校验后,即在数据库中创建新的账户并可进行登录,在登录时应该有登录次数验证,如果多次登录应该将该账号暂时冻结。

b.博文,相册,文件下载的列表显示。用户不管是否有登录

都可以访问博文,相册,下载列表,在访问后系统后台应该即时查询出结构并展示在前台页面。

c.留言回复功能。已经登录的用户可以进行对任意一篇博文进行留言和对留言可以进行回复,一篇博文可以有多个留

言,一个留言可以有多个回复。

d.文件下载功能。已经登录的用户可以享受网站的资源下载功能,未登录的用户只能查看文件,

不能进行下载操作。e.博客数据图形化统计功能。对文章浏览情况,

回复留言情况,对网站登录用户,注册量,各个页面访问,

功能使用情况,进行统计分析,生成包括折线图,饼图的实时图标并且允许导出

excel 报表。

f.博客内容搜索。在博文列表用户可以输入关键字来搜索博

文内容,关键字可以是标题,内容,

或者文章作者,搜索出来的内容应该呈现出一个搜索结果列表给搜索者,

并将关键词用显眼的文字标注出来。

g.对博文,相册,文件下载的数据管理。在管理登录后台后,

应该可以进行相应权限的增删查改操作,

并在前台页面实时反映操作的结果,在增删查改的数据输入错误时,应该阻止操作,并提示管理员重新输入数据。而在删除操作时应该提示确认。

4.2博客网站结构分析

4.2.1前端页面结构分析:前端模块通过js+html+angularJS 实现数据的展示,其中JS+HTML 渲染页面,angularJs 中构造数据接口用来请求后台数据,最后将所请求到的数据反映在网页上进行展示。Html 标签中包含了AngularJs 的语法,例如:ng-click ,ng-repeat 标签等。以删除文章的操作为例:

$http({

url:'/admin/deleteArticle',method:'post',dataType:“JSON ”,params:{

'id':$($event.target).attr(“value ”)}

}).then(function (response){

$(“#”+response.data.articleid).parents(“tr ”).remove();

layer.msg ('删除成功',

{icon:1,

time:2000});

bool =false;},function error(){

layer.msg ('删除失败',

{icon:2,time:2000});

bool =false;}

根据列表中点击按钮的id 来请求后端

接口,然后通过接口返回的数据判断是否删除成功,如果删除成功进行对应的操作,删除失败也应进行对应的操作。

4.2.2后端模块数据结构分析:

后端模块架构使用Springboot+Hibernate 框

架。其中hibernate 框架作用是将数据持久化,生成实体对象,然后通过Springboot 所提供的JPA 对实体对象进行操作,提供数据接口供前端页面使用。以提供删除文

章功能的接口为例:@RequestMapping(value =“/deleteArticle ”

,produces =“application/json;charset=UTF-8”)

@ResponseBody

publicArticledeleteArticle(HttpSession session,@RequestParam(“id ”)Integer id){

Article article;article =articleService.getById(id);

articleService.delete(article);

adminService.changeMessageCount(1,session);

return article;}

其中@RequestMapping 注解明确了该接口的路由,方法的Article 对象就是实体化以后的文章类实体对象,代表了一条文

章数据,通过在Service 层中定义的getById 方法具体得知需要

删除的是哪一条文章数据,然后再进行删除操作,在完成操作以后将被删除的对象以json 格式返回到前端模块中以供使用。4.3页面设计本博客用户页面设计如上图。页面设计遵循以图1博客网站主要功能模块图(转下页)65--

科学技术创新2019.33

美观实用为核心的理念。设计遵守三个原则:

一致性原则,易用性原则,容错原则。在页面开发时应该多进行组件复用,

保证开发效率。主要页面包括:博客主页(index.html ),博文列表

(blogArt.html ),下载列表(download.html ),相册列表(photo.html ),

后端模块主页(admin/index.html ),博文管理(blogAdmin.html ),

下载管理(downloadAdmin.html ),照片管理(photoAdmin),可视化图表生成(pictureAdmin.html )。他们的关系如下图:

图2博客系统页面关系图4.4数据库设计根据功能需求,本博客系统物理数据库设计如表1物理数据库设计所示:表1物理数据库设计结束语

基于Springboot 的博客系统运用了时下流行的框架与技术,

满足了预期的开发需求,实现了开发目标,

性能和交互效果均符合设计需求。用户和管理员在本网站所进行的操作能够实时

反映,使用过程中不会出现报错,

系统崩溃等情况。本博客与传统博客的区别如下:从用户界面上来说,一改以往大多数博客系统不重视用户界面美观与否的问题。本博客给用户提供了美观舒适的用户界面,功能清晰,区块划分明确,用户体验良好,新技术所带来的实时刷新页面也能够极大的提升用户体验。从系统

功能上来说,相较于以往的博客系统,

本系统的功能具有丰富、多元化的特点,不仅实现了基本的博客功能,

更提供了互动,交流的功能,让浏览变得充满活力。在项目可维护性方面,

本博客系统的可拓展性极强,在有新的功能需求的情况下只要新增新的接口或者对已有接口进行修改就可以快速进行二次开发。

参考文献

[1]孙卫琴.Tomcat 与JavaWeb 开发技术详解[M].北京:电子工业

出版社,2009.

[2]王福强.SpringBoot 揭秘:快速构建微服务体系[M].北京:

机械工业出版社,2016.[3]张峰.应用SpringBoot 改变Web 应用开发模式[J].科技创新与

应用,2017.

[4]杨家炜.基于SpringBoot 的Web 设计与实现[J].轻工科技,2016[5]胡世民.基于互联网+的房屋租赁管理系统的设计与实现[D].南昌:江西财经大学,2018.[6]张雷,王悦.基于SpringBoot 微服务架构下的MVC 模型研究

[J].安徽电子信息职业技术学院学报,2018,17(4):1-9.

名字 别名 描述 定义 用户表 账号表 记录账号的个人基本情况 用户表=用户id+登录密码+用户头像+账户类型

博文表 博文内容表 记录博文的相关数据 博文表=博文id+博文内容+博文标题+博文发布时间+

博文类型+博文点击量

文件表 下载表 记录下载内容的相关数据 文件表=文件id+文件URL+文件标题+文件上传时间

相册表 相册信息表 记录照片的相关信息 相册表=照片id+照片url+照片拍摄时间+照片简介

留言表

用户留言表 记录留言的相关数据 留言表=留言id+留言人+留言内容+留言时间+博文id 基于CNN-Bayesian 模型的冬小麦识别研究

张亚男尹昊*李芳

(山东农业大学信息科学与工程学院,

山东泰安271018)1概述

小麦是世界上最重要的粮食作物,及时准确地获取冬小麦

的空间分布,对于产量估算、粮食制定、

种植管理等农业学科具有重要意义。2018年6月2日,我国首颗农业高分观测卫星成功发射,这是国内第一颗搭载了能有效辨别作物类型的高空间分辨率遥感卫星。该卫星的发射大幅提高了农业对地监测

能力,能够显著提升作物精准识别能力,可以实现对玉米、

大豆、棉花、马铃薯等同期生长的大宗作物和大蒜、

生姜、枸杞等经济作物的田块级精细识别,为高精度、定量化的农业生产过程和农业资源环境要素监测提供可靠的支撑手段。由于RS 图像背景复杂,传统方法只能提取浅层特征,而深度学习方法可以提取高层特征,越来越多应用遥感领域。使用高分辨率图像可显

著地提高空间分辨率和作物提取的精度[1]。然而,由于此类图像的光谱特征不如中、低分辨率图像的光谱特征稳定,传统的特征提取方法难以提取有效的像素特征。目前,人工智能方法以及3S 技术集成识别农作物种植面积的方法被更多的研究者使用[2-4]

。因此,本文研究应用CNN-Bayesian 模型来实现冬小麦的精准识别。

2研究区域及数据2.1研究区

山东省是中国主要的小麦产区,种植面积在2016年达到38303km 2,在2017年达到38429km 2。章丘县位于摘要:针对利用传统方法高分辨率影像中冬小麦空间分布的提取精度较低的问题,本研究利用CNN-Bayesian (卷积-贝叶

斯)模型逐像素分类模型,在高分2号影像上进行了训练和测试。以章丘县为研究区域,首先对下载的32景遥感影像进行预处理,然后根据实地调查获取的样点,进行人工标注制作样本数据,得到训练数据集。并对CNN-Bayesian 模型进行构建,定义好初

始函数,创建权重和偏置,输入训练集进行模型训练。

然后输入测试集,通过CNN-Bayesian 模型得到冬小麦的空间分布信息。最后选择经典的图像语义分割模型进行对比实验,以及通过准确度、精确度、查全率、Kappa 系数四个指标进行精度定量评价。实验结

果表明,与其他模型相比,CNN-Bayesian 模型具有较好的识别率,

其整体精度为0.946。因此,利用CNN-Bayesia 模型可以获得较高的提取精度。

关键词:冬小麦;卷积神经网络;贝叶斯模型;GF-2图像

中图分类号:S512.1+1,TP391.41文献标识码:A 文章编号:2096-4390(2019)33-0066-02(转下页)

66--

文档

基于springboot的博客网站的设计与实现

科学技术创新2019.331概述博客网站是互联网时代的产物,是人们寻求社会交流,精神寄托的容器。在互联网时代的发展中,各种各样的新事物,新产品改变了社会原有的社交结构,博客系统就是其中之一。它通过互联网,将想要分享个人信息,寻求同好的人构造成了一个全新的互联网角色———博主。在博客中,博主可以按照自己的需求,构建出个人空间,体现出博主个人的个性与需求。另一方面,博客的浏览者,需求是在网络博客中获取所需信息,学习所求知识。博客系统本质上就是一个社交系统,让一个圈子的人可以互相理解交流,搭建了一个
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top