基于SpringBoot和BootStrap的全栈论坛网站(附上源码)

news/2025/2/16 3:03:50/


耗时大约三个星期不到的时间,把这个论坛项目基本上算是完成了,做这个项目最主要的目的是熟悉SpringBoot的使用,然后通过整个项目了解了BootStrap、Thymeleaf、editor.md等等工具的使用,今天就来做一下总结


(一)项目展示


首先进入登陆页面,输入用户名和密码进入首页,也可以点击右下角注册新用户:

登陆成功后进入首页,可以看到用户发的各种问题:

点击第一个我自己发的问题:

问题标题,详细内容,标签都存在,右侧相关问题是根据发布问题时所选标签进行匹配,底部可以留言:

进入个人中心可以看到我的问题和我的消息

点击消息后未读标志消失,问题发布使用editor.md文本框,可输入富文本

整个博客的所有功能基本上就是这一些,在文末会附上源代码。


(二)项目如何跑起来


项目采用idea开发,jdk版本1.8,数据库使用mysql,整个项目一共建了四张表,因此你也需要建这四张表,建表语句我都放在了readme.md中

create database myblog;
use myblog;
CREATE TABLE `user` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(45) NOT NULL,`password` varchar(45) NOT NULL,`token` varchar(45) NOT NULL,`headpic` varchar(1024) NOT NULL DEFAULT 'https://gitee.com/lyucoding/java-starter/raw/main/images/GitHub.png',PRIMARY KEY (`id`)
);
CREATE TABLE `question` (`id` int(11) NOT NULL AUTO_INCREMENT,`title` varchar(50) NOT NULL,`description` text NOT NULL,`createid` int(11) NOT NULL,`comment_count` int(11) NOT NULL DEFAULT '0',`view_count` int(11) NOT NULL DEFAULT '0',`like_count` int(11) NOT NULL DEFAULT '0',`tag` varchar(250) NOT NULL,`createtime` bigint(20) NOT NULL,PRIMARY KEY (`id`)
);
CREATE TABLE `comment` (`id` int(11) NOT NULL AUTO_INCREMENT,`parent_id` int(11) NOT NULL,`type` int(11) NOT NULL,`commentor` int(11) DEFAULT NULL,`createtime` bigint(20) DEFAULT NULL,`like_count` int(11) DEFAULT '0',`content` varchar(200) NOT NULL,`commentcount` int(11) DEFAULT '0',PRIMARY KEY (`id`)
);
CREATE TABLE `notification` (`id` int(11) NOT NULL AUTO_INCREMENT,`notifier` int(11) NOT NULL,`receiver` int(11) NOT NULL,`outerid` int(11) NOT NULL,`type` int(11) NOT NULL,`createtime` bigint(20) NOT NULL,`status` int(11) NOT NULL DEFAULT '0',PRIMARY KEY (`id`)
);insert into `user` values(1,'root','123456','5be53bcd-f1e3-4a40-a550-2a3a0b77ef9b','https://gitee.com/lyucoding/java-starter/raw/main/images/GitHub.png');
insert into USER values(2,'admin','123456','158de35f-6995-4766-8dae-2cf52354a366','https://gitee.com/lyucoding/java-starter/raw/main/images/GitHub.png');
insert into `question` values(1,'这是我的第一个问题','这是我的第一个问题,测试一下',1,2,19,0,'java',1632216866873);
insert into `comment` values(1,1,1,2,1632216895980,0,'我要来评论一下',2);
insert into `comment` values(2,1,2,2,1632216909821,0,'评论下面的评论',0);
insert into `comment` values(3,1,2,2,1632217004805,0,'再评论一下',0);
insert into `comment` values(4,1,1,2,1632217566350,0,'111',0);
insert into `notification` values(1,2,1,1,2,1632216895992,1);
insert into `notification` values(2,2,2,1,1,1632216909833,1);
insert into `notification` values(3,2,2,1,1,1632217004818,1);
insert into `notification` values(4,2,1,1,2,1632217566353,0);

(三)项目可以参考的文档


在写这个项目的时候我写了8篇博客,可以供大家参考:


开发基于SpringBoot和BootStrap的全栈论坛网站(一):准备阶段


开发基于SpringBoot和BootStrap的全栈论坛网站(二):后端人员如何快速使用BootStrap


开发基于SpringBoot和BootStrap的全栈论坛网站(三):登陆注册以及cookies的功能完成


开发基于SpringBoot和BootStrap的全栈论坛网站(四):完成问题发布功能


开发基于SpringBoot和BootStrap的全栈论坛网站(五):完成首页展示以及分页功能


开发基于SpringBoot和BootStrap的全栈论坛网站(六):完成个人中心、问题详情和问题编辑


开发基于SpringBoot和BootStrap的全栈论坛网站(七):完成回复和二级回复功能


开发基于SpringBoot和BootStrap的全栈论坛网站(八):完成回复通知的功能


用到的其他资源的网址已经放在README.MD下


(四)项目总结


这不算是一个很大型的项目,但用作学习我感觉还算不错,当然bug肯定会有,如果遇到有什么问题也可以在评论下和我讲,能解决的一定会帮大家解决,希望大家能给个Star


项目源码:github源码


http://www.ppmy.cn/news/116608.html

相关文章

phpExcel导出excel打不开问题

关于phpExcel导出excel之后打开不了的问题 情况说明: 我相信很多人用过phpExcel这个类库都会遇到的一个问题就是,导出excel表格文件后(xls或xlsx文件),打开这个文件既然显示 然后网上也很多解决办法,主要看大家的情况…

9种常见的INTERNET接入方式

9种常见的INTERNET接入方式 提到接入网,首先要涉及一个带宽问题,随着互联网技术的不断发展和完善,接入网的带宽被人们分为窄带和宽带,业内专家普遍认为宽带接入是未来发展方向。 宽带运营商网络结构如图1所示。整个城市网络由核心…

a55计算机主板,A55架构简介与A55主板赏析

A55架构简介与主板赏析: A55 FCH芯片架构 FCH芯片的角色大概相当于以往的南桥芯片,自身并没有整合显示核心,而是通过UMI接口(而不是HT总线)连接APU整合的显示核心进行输出。A55 FCH能提供4条芯片PCI-E 2.0通道、14个USB2.0接口、6个支持RAID 0/1/10的SATA2.0接口,并且支持最…

pytorch张量基本操作、卷积池化介绍、简单神经cnn网络搭建和训练示例

张量基本操作、卷积池化介绍、简单神经cnn网络搭建和训练示例 第一章 pytorch介绍第二章 pytorch中张量的数据类型介绍第三章 pytorch张量的基本操作3.1 创建张量3.2 张量操作3.3 张量索引3.4. 自动求导 第四章 PyTorch中卷积、池化、激活函数、全连接层介绍4.1 卷积层4.2 池化…

mysql中的锁浅析

前言 MySQL 锁机制是保证多个并发事务同时访问数据库时数据一致性的重要手段,也是 MySQL 的重要特性之一。在实际开发使用 MySQL 数据库时,了解并掌握 MySQL 的锁机制非常重要,因为不正确的锁机制使用很容易出现严重的性能瓶颈和数据不一致等…

Python入门教程+项目实战-13.1节-集合基础概念

目录 13.1.1 理解集合类型 13.1.2 集合的类型名 13.1.3 集合的定义 13.1.4 在循环中遍历集合 13.1.5 集合的元素输出顺序 13.1.6 知识要点 13.1.7 系统学习python 13.1.1 理解集合类型 集合类型与字典类型非常接近,Python中的集合类型也是用{}符号括住的一个…

电脑装机必备软件清单

notepad:字体是Lucida grande 14字体:chrome谷歌输入法qq微信office2013visio2013CAJviewer百度云盘7zipkmsVLCultraISOmatlab2018idea2018,jdk,gitmysqlnavicat 转载于:https://www.cnblogs.com/igoodful/p/10922952.html

装机必备的软件

装机必备的软件 驱动人生 1:娱乐软件 网易云音乐 chrome 微信 QQ 百度网盘 WPS 2:工具软件 typoraVMWARE workstation 16 proubuntu 16.4 mirors.163.com VSCodegitpyenv(对python版本的管理)**sudo apt-get update 报错…