项目介绍
当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。以前企业对于博客信息的管理和控制,采用人工登记的方式保存相关数据,这种以人力为主的管理模式已然落后。本人结合使用主流的程序开发技术,设计了一款基于Springboot开发的精简博客系统,可以较大地减少人力、财力的损耗,方便相关人员及时更新和保存信息。本系统主要使用B/S开发模式,在idea开发平台上,运用Java语言设计相关的系统功能模块,MySQL数据库管理相关的系统数据信息,SpringBoot框架设计和开发系统功能架构,最后通过使用Tomcat服务器,在浏览器中发布设计的系统,并且完成系统与数据库的交互工作。本文对系统的需求分析、可行性分析、技术支持、功能设计、数据库设计、功能测试等内容做了较为详细的介绍,并且在本文中也展示了系统主要的功能模块设计界面和操作界面,并对其做出了必要的解释说明,方便用户对系统进行操作和使用,以及后期的相关人员对系统进行更新和维护。本系统的实现可以极大地提高企业的工作效率,提升用户的使用体验,因此在现实生活中运用本系统具有很大的使用价值。
4.1系统的总体功能设计
系统的总体功能设计,是需求分析的下一个阶段,是系统实现的上一个阶段,它是系统详细功能设计的一个大方向,也就是说系统的各类子功能模块的设计,都是以总体功能设计为目标而进行的。通过对系统进行需求分析可知,可以大致了解系统具体所需要的相关功能。本系统主要的功能需求包括用户信息管理、博客信息管理、论坛信息管理等模块。本系统的总体功能设计图如图4-1所示。
开发环境
编程语言:Java
数据库 :Mysql
系统架构:B/S
后端框架:SpringBoot
编译工具:idea或者eclipse,jdk1.8,maven
支持定做:java/php/python/android/小程序vue/爬虫/c#/asp.net
系统实现
5.1个人中心
通过设计的个人中心管理功能模块,管理用户可以对相关的个人信息进行管理,比如管理用户可以更新个人账号的密码信息,修改个人账号的用户名信息等,修改密码界面设计如图5-1所示,个人信息界面设计如图5-2所示。
图5-1修改密码界面
图5-2个人信息界面
5.2管理员管理
通过设计的管理员管理功能模块,管理用户可以管理相关的管理员信息资料,比如进行查看管理员的用户名,更新管理员的密码信息,删除已经注销的管理员信息记录等操作,管理员管理界面设计如图5-3所示。
图5-3管理员管理界面
5.3用户管理
通过设计的员工管理功能模块,管理用户可以管理相关的用户信息资料,比如进行查看用户姓名,修改用户联系方式,删除已经注销的用户信息记录等操作,用户管理界面设计如图5-4所示。
图5-4用户管理界面
5.4基础数据管理
通过设计的基础数据管理功能模块,管理用户可以对相关的博客类型、帖子类型、公告类型信息进行管理,比如管理用户可以查看博客类型、帖子类型、公告类型的详情信息,删除失效的博客类型、帖子类型、公告类型信息记录等,博客类型管理界面设计如图5-5所示,帖子类型管理界面设计如图5-6所示,公告类型管理界面设计如图5-7所示。
图5-5博客类型管理界面
图5-6帖子类型管理界面
图5-7公告类型管理界面
5.5博客信息管理
通过设计的博客信息管理功能模块,管理用户可以对相关的博客信息进行管理,比如管理用户可以查看博客内容信息,删除已经失效的博客信息记录等操作,博客信息管理界面设计如图5-8所示。
图5-8博客信息管理界面
5.6博客评论管理
通过设计的博客评论信息管理功能模块,管理用户可以对相关的博客评论信息进行管理,比如管理用户可以查看博客评论内容信息,删除已经失效的博客评论信息记录等操作,博客评论管理界面设计如图5-9所示。
图5-9博客评论管理界面
5.7博客收藏管理
通过设计的博客收藏管理功能模块,管理用户可以对相关的博客收藏信息进行管理,比如管理用户可以查看博客收藏时间信息,删除已经失效的博客收藏信息记录等操作,博客收藏管理界面设计如图5-10所示。
图5-10博客收藏管理界面
5.8论坛管理
通过设计的论坛管理功能模块,管理用户可以对相关的论坛信息进行管理,比如管理用户可以查看论坛的帖子内容信息,删除已经失效的论坛信息记录等操作,论坛管理界面设计如图5-11所示。
图5-11论坛管理界面
5.9公告信息管理
通过设计的公告信息管理功能模块,管理用户可以对相关的公告信息进行管理,比如管理用户可以查看公告时间信息,删除已经失效的公告信息记录等操作,公告信息管理界面设计如图5-12所示。
图5-12公告信息管理界面
5.10轮播图管理
通过设计的轮播图管理功能模块,管理用户可以对相关的轮播图信息进行管理,比如管理用户可以查看轮播图名称信息,删除已经失效的轮播图信息记录等操作,轮播图管理界面设计如图5-13所示。
图5-13轮播图管理界面
核心代码
package com.controller;
import java.io.File;
import java.math.BigDecimal;
import java.net.URL;
import java.text.SimpleDateFormat;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
import org.springframework.beans.BeanUtils;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import com.service.TokenService;
import com.utils.*;
import java.lang.reflect.InvocationTargetException;
import com.service.DictionaryService;
import org.apache.commons.lang3.StringUtils;
import com.annotation.IgnoreAuth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.*;
import com.entity.view.*;
import com.service.*;
import com.utils.PageUtils;
import com.utils.R;
import com.alibaba.fastjson.*;
/**
* 博客信息
* 后端接口
* @author
* @email
*/
@RestController
@Controller
@RequestMapping("/boke")
public class BokeController {
private static final Logger logger = LoggerFactory.getLogger(BokeController.class);
@Autowired
private BokeService bokeService;
@Autowired
private TokenService tokenService;
@Autowired
private DictionaryService dictionaryService;
//级联表service
@Autowired
private YonghuService yonghuService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){
logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));
String role = String.valueOf(request.getSession().getAttribute("role"));
if(false)
return R.error(511,"永不会进入");
else if("用户".equals(role))
params