本文所属【知识林】:http://www.zslin.com/web/article/detail/35

此项目是一个比较简易的校园博客。
麻雀虽小五脏俱全,虽然是比较简易的但是涉及的知识点还是比较全面的。

此项目涵盖了【知识林】中SpringbootThymeleaf中所有知识点的内容。

主要功能有:

  1. 系统管理

    • 系统初始化
    • 菜单管理
    • 角色管理
    • 用户管理
    • 系统配置管理
  2. 用户注册

    • 邮件验证码实现
    • 用户登陆
    • 找回密码
  3. 博文分类管理

    • 添加分类
    • 修改分类
  4. 博文管理

    • 添加博文
    • 修改博文
  5. 博文评论(未实现)


初始化系统

  • resources/application-dev.properties中配置了数据库的相关配置,可以修改spring.datasource相关的东西以修改数据库

  • 启动项目后访问地址:/init进行初始化(需要输入管理员昵称、用户名和密码)

  • 访问/admin登陆到后台管理,在系统配置中可修改系统名称、管理员邮箱(用于接收各事件的邮件通知)等。

  • 网站配置中可以设置学校名称用于前台显示。

用户注册

  • 通过邮箱注册,注册时需要发送验证码到注册邮箱,验证通过才能注册。注册时判断邮箱地址是否已存在,如果存在则提示且不能再次注册。

  • 找回密码,忘记密码是可通过申请邮箱地址找回,也通过发送验证码的方式,验证码验证通过后生成一个随机密码发送至注册邮箱中。

  • 使用邮箱地址和登陆密码进行登陆

  • 登陆后可修改自己的基本信息,如:姓名、座右铭、个人介绍及登陆密码等。

邮件发送可以参考另一篇文章《Springboot 之 JavaMailSender发送电子邮件》

博文管理

博文管理分为博文分类管理和博文内容管理

  • 点“我的分类”即可进入分类管理,可对自己的分类进行新增、修改和删除操作;

  • 点“我的博文”即可进入博文内容管理,可对自己发布的博文进行修改,也可新增,在新增时可以直接新增分类。

  • 在博文内容管理中使用wangEditor在线编辑器,已配置好图片上传的服务端程序;

后台管理

后台管理功能属于系统管理人员操作,可以参考另一个纯净项目《完整项目基础架构精简版-实现权限管理》

  • 权限管理

在权限管理中有:菜单管理角色管理用户管理,这三块功能属于系统功能,在系统初始化时自动生成。

菜单管理:可修改菜单名称、排序、图标(图标来源于fontawesome.iov3.bootcss.com);

角色管理:可添加、修改、删除角色,也可为角色授权资源菜单;

用户管理:可添加、修改、删除用户,也可以为用户分配角色,只有分配有角色的用户才可以登陆系统,且只能访问所拥有角色权限范围内的功能。

  • 系统管理

系统配置:在系统管理中目前只有这一个功能,用于设置网站名称、系统管理员邮箱地址(用于接收提示邮件,包括:用户注册通知用户发布博文的通知用户修改博文的通知)等。

  • 系统应用

系统应用属于网站管理功能

网站配置:目前可设置学校名称,将显示在前面页面中;

博文管理:用于管理用户发布的博文信息,可设置博文的属性(包括是否前台显示、是否为推荐);

用户管理:查看从前台注册的用户(即网站用户)。

未完成功能

在这个版本中暂时不写博文点评功能,此功能在技术层面上讲没有任何难点,所以暂时不实现。

访问

初始化页面:http://sblog.zslin.com/init(已经初始化过不能再重复初始化)

前台页面:http://sblog.zslin.com

后台管理:http://sblog.zslin.com/admin

后台管理用户名:admin

后台管理用户密码:111111

说明

本项目在Github上的地址:https://github.com/zsl131/school-blog

本项目作者:知识林


项目截图

本人页面设计水平太差,先随便设计点效果出来主要是演示后台程序功能,所以页面设计先暂时放一放。

用户注册页面效果:

用户信息信息、密码修改页面:

添加分类页面效果:

删除信息提示效果:

添加博文页面效果:

博文列表页面效果:

404错误页面效果:

500错误页面效果:

后台管理页面效果:

http://www.zslin.com/web/article/detail/35

Springboot+JPA+Thymeleaf 校园博客完整小网站的更多相关文章

  1. 技术博客--微信小程序canvas实现图片编辑

    技术博客--微信小程序canvas实现图片编辑 我们的这个小程序不仅仅是想给用户提供一个保存和查找的平台,还希望能给用户一个展示自己创意的舞台,因此我们实现了图片的编辑部分.我们对对图片的编辑集成了很 ...

  2. 技术博客——微信小程序的架构与原理

    技术博客--微信小程序的架构与原理 在两个月的微信小程序开发过程中,我曾走了不少弯路,也曾被很多现在看来十分可笑的问题所困扰.这些弯路与困扰,基本上都是由于当时对小程序的架构理解不够充分,对小程序的原 ...

  3. 【原】无脑操作:IDEA + maven + Shiro + SpringBoot + JPA + Thymeleaf实现基础授权权限

    上一篇<[原]无脑操作:IDEA + maven + Shiro + SpringBoot + JPA + Thymeleaf实现基础认证权限>介绍了实现Shiro的基础认证.本篇谈谈实现 ...

  4. 【原】无脑操作:IDEA + maven + Shiro + SpringBoot + JPA + Thymeleaf实现基础认证权限

    开发环境搭建参见<[原]无脑操作:IDEA + maven + SpringBoot + JPA + Thymeleaf实现CRUD及分页> 需求: ① 除了登录页面,在地址栏直接访问其他 ...

  5. 技术博客——微信小程序UI的设计与美化

    技术博客--微信小程序UI的设计与美化 在alpha阶段的开发过后,我们的小程序也上线了.看到自己努力之后的成果大家都很开心,但对比已有的表情包小程序,我们的界面还有很大的提升空间,许多的界面都是各个 ...

  6. springboot+jpa+thymeleaf增删改查的示例(转)

    这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...

  7. springboot(十五):springboot+jpa+thymeleaf增删改查示例

    这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...

  8. 基于SpringBoot从零构建博客网站 - 技术选型和整合开发环境

    技术选型和整合开发环境 1.技术选型 博客网站是基于SpringBoot整合其它模块而开发的,那么每个模块选择的技术如下: SpringBoot版本选择目前较新的2.1.1.RELEASE版本 持久化 ...

  9. Spring MVC+Hibernate JPA搭建的博客系统项目中所遇到的坑

    标签: springmvc hibernate 2016年12月21日 21:48:035133人阅读 评论(0) 收藏 举报  分类: Spring/Spring MVC(6)  Hibernate ...

随机推荐

  1. OpenGL Shader Key Points (2)

    1.  Uniform 1.1.  Uniform变量 不是所有的变量都是跟顶点一一对应的,如变换矩阵,光源位置等. Uniform变量可以在任何类型的shader中使用,但只能作为输入值,不能在sh ...

  2. FPGrowth 实现

    在关联规则挖掘领域最经典的算法法是Apriori,其致命的缺点是需要多次扫描事务数据库.于是人们提出了各种裁剪(prune)数据集的方法以减少I/O开支,韩嘉炜老师的FP-Tree算法就是其中非常高效 ...

  3. ROS探索总结(十四)——move_base(路径规划)

    在上一篇的博客中,我们一起学习了ROS定位于导航的总体框架,这一篇我们主要研究其中最重要的move_base包. 在总体框架图中可以看到,move_base提供了ROS导航的配置.运行.交互接口,它主 ...

  4. 设计模式学习--组合模式,c++代码

    下面是组合模式的UML类图: <span style="font-family:Microsoft YaHei;font-size:18px;"><span st ...

  5. solr研磨之游标分页

    普通分页 当需要深度分页的时候,比如查询第10000页数据,每页显示10条,意味着需要提取前10000 x 10 页的数据,并将这100000条数据缓存在内存中,然后在内存中进行排序.最后返回最后10 ...

  6. CSS3概述

    首先我们了解下什么是css3,css3是css技术的一个升级.css3中并没有采用总体结构,而是采用分工协作的模块化结构. css3中的模块 模块名称 功能描述 basic box model 定义各 ...

  7. Spring Boot + Jersey发生FileNotFoundException (No such file or directory)

    我在使用Spring Boot + Jersey 项目,解决了上一篇随笔中的FileNotFoundException,然后又报了一个FileNotFoundException,不过报错信息不一样了 ...

  8. Spring Boot Kafka

    1.创建集群 http://kafka.apache.org/documentation/#quickstart 有一句我觉得特别重要: For Kafka, a single broker is j ...

  9. oracle 查看表的索引信息

    1.select * from user_indexes where table_name='PAMSODT0P02' 2.select * from user_ind_columns  where ...

  10. 【转】学习FFmpeg API – 解码视频

    ffmpeg是编解码的利器,用了很久,以前看过dranger 的教程,非常精彩,受益颇多,是学习ffmpeg api很好的材料.可惜的是其针对的ffmpeg版本已经比较老了,而ffmpeg的更新又很快 ...