基于javaweb的SpringBoot糖友之家交流管理系统病友论坛(java+springboot+vue+maven+mysql)

运行环境

Java≥8、MySQL≥5.7、Node.js≥14

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可

❗没学过node.js的不要搞前后端分离项目

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

041324570701

051324570701

061324570701

071324570701

081324570701

091324570701

基于javaweb的SpringBoot糖友之家交流管理系统病友论坛(java+springboot+vue+maven+mysql)

项目介绍

课程排课系统,该系统分三种角色:患者、医生、医学者;

主要功能包括: 登录、注册、咨询兰、预测中心、论坛中心、文章分类、过审管理、论坛管理、角色管理、用户管理、头像上传、我的咨询、我的帖子、我的评论;

环境需要 1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;

3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;

4.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目

5.数据库:MySql 8.0版本;

技术栈 1.java+SpringBoot+VUE+maven+Mysql

管理员博文控制层:

/**

  • @author yy

*/

@Controller

@RequestMapping(“/admin”)

public class BlogController {

@Resource

private BlogService blogService;

@Resource

private CategoryService categoryService;

/**

  • 博客列表

  • @param params 参数

  • @return com.hbu.myblog.util.Result

*/

@GetMapping(“/blogs/list”)

@ResponseBody

public Result list(@RequestParam Map<String, Object> params) {

if (StringUtils.isEmpty(params.get(“page”)) || StringUtils.isEmpty(params.get(“limit”))) {

return ResultGenerator.genFailResult(“参数异常!”);

PageQueryUtil pageUtil = new PageQueryUtil(params);

return ResultGenerator.genSuccessResult(blogService.getBlogsPage(pageUtil));

/**

  • @param request http请求

  • @return java.lang.String

*/

@GetMapping(“/blogs”)

public String list(HttpServletRequest request) {

request.setAttribute(“path”, “blogs”);

return “admin/blog”;

/**

  • @param request http请求

  • @return java.lang.String

*/

@GetMapping(“/blogs/edit”)

public String edit(HttpServletRequest request) {

request.setAttribute(“path”, “edit”);

request.setAttribute(“categories”, categoryService.getAllCategories());

return “admin/edit”;

/**

  • @param request http请求

  • @param blogId 博客id

  • @return java.lang.String

*/

@GetMapping(“/blogs/edit/{blogId}”)

public String edit(HttpServletRequest request, @PathVariable(“blogId”) Long blogId) {

request.setAttribute(“path”, “edit”);

Blog blog = blogService.getBlogById(blogId);

if (blog == null) {

return “error/error_400”;

request.setAttribute(“blog”, blog);

request.setAttribute(“categories”, categoryService.getAllCategories());

return “admin/edit”;

/**

  • 添加文章

  • @param blogTitle 文章标题

  • @param blogSummary 摘要

  • @param blogCategoryId 类别

  • @param blogTags 标签

  • @param blogContent 内容

  • @param blogStatus 草稿,发布

  • @param enableComment 可否评论

  • @return com.hbu.myblog.util.Result

*/

@PostMapping(“/blogs/save”)

@ResponseBody

public Result save(@RequestParam(“blogTitle”) String blogTitle,

@RequestParam(name = “blogSummary”, required = false) String blogSummary,

@RequestParam(“blogCategoryId”) Integer blogCategoryId,

@RequestParam(“blogTags”) String blogTags,

@RequestParam(“blogContent”) String blogContent,

@RequestParam(“blogStatus”) Byte blogStatus,

@RequestParam(“enableComment”) Byte enableComment) {

if (StringUtils.isEmpty(blogTitle)) {

return ResultGenerator.genFailResult(“请输入文章标题”);

if (blogTitle.trim().length() > 150) {

return ResultGenerator.genFailResult(“标题过长”);

if (StringUtils.isEmpty(blogTags)) {

return ResultGenerator.genFailResult(“请输入文章标签”);

if (blogTags.trim().length() > 150) {

return ResultGenerator.genFailResult(“标签过长”);

if (blogSummary.trim().length() > 375) {

return ResultGenerator.genFailResult(“摘要过长”);

if (StringUtils.isEmpty(blogContent)) {

return ResultGenerator.genFailResult(“请输入文章内容”);

if (blogTags.trim().length() > 100000) {

return ResultGenerator.genFailResult(“文章内容过长”);

Blog blog = new Blog();

blog.setBlogTitle(blogTitle);

blog.setBlogSummary(blogSummary);

blog.setBlogCategoryId(blogCategoryId);

blog.setBlogTags(blogTags);

blog.setBlogContent(blogContent);

blog.setBlogStatus(blogStatus);

blog.setEnableComment(enableComment);

String saveBlogResult = blogService.saveBlog(blog);

if (“success”.equals(saveBlogResult)) {

return ResultGenerator.genSuccessResult(“添加成功”);

} else {

return ResultGenerator.genFailResult(saveBlogResult);

/**

  • 修改文章

  • @param blogId 文章ID

  • @param blogTitle 文章标题

  • @param blogSummary 摘要

  • @param blogCategoryId 类别

  • @param blogTags 标签

  • @param blogContent 内容

  • @param blogStatus 草稿,发布

  • @param enableComment 可否评论

  • @return com.hbu.myblog.util.Result

*/

@PostMapping(“/blogs/update”)

@ResponseBody

public Result update(@RequestParam(“blogId”) Long blogId,

@RequestParam(“blogTitle”) String blogTitle,

@RequestParam(name = “blogSummary”, required = false) String blogSummary,

@RequestParam(“blogCategoryId”) Integer blogCategoryId,

@RequestParam(“blogTags”) String blogTags,

@RequestParam(“blogContent”) String blogContent,

@RequestParam(“blogStatus”) Byte blogStatus,

@RequestParam(“enableComment”) Byte enableComment) {

if (StringUtils.isEmpty(blogTitle)) {

return ResultGenerator.genFailResult(“请输入文章标题”);

if (blogTitle.trim().length() > 150) {

return ResultGenerator.genFailResult(“标题过长”);

if (StringUtils.isEmpty(blogTags)) {

return ResultGenerator.genFailResult(“请输入文章标签”);

if (blogTags.trim().length() > 150) {

return ResultGenerator.genFailResult(“标签过长”);

if (blogSummary.trim().length() > 375) {

return ResultGenerator.genFailResult(“摘要过长”);

if (StringUtils.isEmpty(blogContent)) {

return ResultGenerator.genFailResult(“请输入文章内容”);

if (blogTags.trim().length() > 100000) {

return ResultGenerator.genFailResult(“文章内容过长”);

Blog blog = new Blog();

blog.setBlogId(blogId);

blog.setBlogTitle(blogTitle);

blog.setBlogSummary(blogSummary);

blog.setBlogCategoryId(blogCategoryId);

blog.setBlogTags(blogTags);

blog.setBlogContent(blogContent);

blog.setBlogStatus(blogStatus);

blog.setEnableComment(enableComment);

String updateBlogResult = blogService.updateBlog(blog);

if (“success”.equals(updateBlogResult)) {

return ResultGenerator.genSuccessResult(“修改成功”);

} else {

return ResultGenerator.genFailResult(updateBlogResult);

/**

  • 根据id的之删除文章

  • @param ids 要删除文章id列表

  • @return com.hbu.myblog.util.Result

*/

@PostMapping(“/blogs/delete”)

@ResponseBody

public Result delete(@RequestBody Integer[] ids) {

if (ids.length < 1) {

return ResultGenerator.genFailResult(“参数异常!”);

if (blogService.deleteBatch(ids)) {

return ResultGenerator.genSuccessResult();

} else {

return ResultGenerator.genFailResult(“删除失败”);

后台类别控制层:

@Controller

@RequestMapping(“/admin”)

public class CategoryController {

@Resource

private CategoryService categoryService;

/**

  • @param request

  • @return java.lang.String

*/

@GetMapping(“/categories”)

public String categoryPage(HttpServletRequest request) {

request.setAttribute(“path”, “categories”);

return “admin/category”;

/**

  • @param params

  • @return com.hbu.myblog.util.Result

*/

@RequestMapping(value = “/categories/list”, method = RequestMethod.GET)

@ResponseBody

public Result list(@RequestParam Map<String, Object> params) {

if (StringUtils.isEmpty(params.get(“page”)) || StringUtils.isEmpty(params.get(“limit”))) {

return ResultGenerator.genFailResult(“参数异常!”);

PageQueryUtil pageUtil = new PageQueryUtil(params);

return ResultGenerator.genSuccessResult(categoryService.getBlogCategoryPage(pageUtil));

/**

  • @param categoryName

  • @param categoryIcon

  • @return com.hbu.myblog.util.Result

*/

@RequestMapping(value = “/categories/save”, method = RequestMethod.POST)

@ResponseBody

public Result save(@RequestParam(“categoryName”) String categoryName,

@RequestParam(“categoryIcon”) String categoryIcon) {

if (StringUtils.isEmpty(categoryName)) {

return ResultGenerator.genFailResult(“请输入分类名称!”);

if (StringUtils.isEmpty(categoryIcon)) {

return ResultGenerator.genFailResult(“请选择分类图标!”);

if (categoryService.saveCategory(categoryName, categoryIcon)) {

return ResultGenerator.genSuccessResult();

} else {

return ResultGenerator.genFailResult(“分类名称重复”);

/**

  • @param categoryId

  • @param categoryName

  • @param categoryIcon

  • @return com.hbu.myblog.util.Result

*/

@RequestMapping(value = “/categories/update”, method = RequestMethod.POST)

@ResponseBody

public Result update(@RequestParam(“categoryId”) Integer categoryId,

@RequestParam(“categoryName”) String categoryName,

@RequestParam(“categoryIcon”) String categoryIcon) {

if (StringUtils.isEmpty(categoryName)) {

return ResultGenerator.genFailResult(“请输入分类名称!”);

if (StringUtils.isEmpty(categoryIcon)) {

return ResultGenerator.genFailResult(“请选择分类图标!”);

if (categoryService.updateCategory(categoryId, categoryName, categoryIcon)) {

return ResultGenerator.genSuccessResult();

} else {

return ResultGenerator.genFailResult(“分类名称重复”);

/**

  • @param ids

  • @return com.hbu.myblog.util.Result

*/

@RequestMapping(value = “/categories/delete”, method = RequestMethod.POST)

@ResponseBody

public Result delete(@RequestBody Integer[] ids) {

if (ids.length < 1) {

return ResultGenerator.genFailResult(“参数异常!”);

if (categoryService.deleteBatch(ids)) {

return ResultGenerator.genSuccessResult();

} else {

return ResultGenerator.genFailResult(“删除失败”);

博文标签控制层: 

@Controller

@RequestMapping(“/admin”)

public class TagController {

@Resource

private TagService tagService;

/**

  • @param request

  • @return java.lang.String

*/

@GetMapping(“/tags”)

public String tagPage(HttpServletRequest request) {

request.setAttribute(“path”, “tags”);

return “admin/tag”;

/**

  • @param params

  • @return com.hbu.myblog.util.Result

*/

@GetMapping(“/tags/list”)

@ResponseBody

public Result list(@RequestParam Map<String, Object> params) {

if (StringUtils.isEmpty(params.get(“page”)) || StringUtils.isEmpty(params.get(“limit”))) {

return ResultGenerator.genFailResult(“参数异常!”);

PageQueryUtil pageUtil = new PageQueryUtil(params);

return ResultGenerator.genSuccessResult(tagService.getBlogTagPage(pageUtil));

/**

  • @param tagName

  • @return com.hbu.myblog.util.Result

*/

@PostMapping(“/tags/save”)

@ResponseBody

public Result save(@RequestParam(“tagName”) String tagName) {

if (StringUtils.isEmpty(tagName)) {

return ResultGenerator.genFailResult(“参数异常!”);

if (tagService.saveTag(tagName)) {

return ResultGenerator.genSuccessResult();

} else {

return ResultGenerator.genFailResult(“标签名称重复”);

@PostMapping(“/tags/delete”)

@ResponseBody

public Result delete(@RequestBody Integer[] ids) {

if (ids.length < 1) {

return ResultGenerator.genFailResult(“参数异常!”);

if (tagService.deleteBatch(ids)) {

return ResultGenerator.genSuccessResult();

} else {

return ResultGenerator.genFailResult(“有关联数据请勿强行删除”);


项目链接:
https://javayms.github.io?id=101524190701201ju
https://javayms.pages.dev?id=101524190701201ju