博主主页:Java旅途
简介:分享计算机知识、学习路线、系统源码及教程
文末获取源码
117SpringBoot动漫论坛网站
一、项目介绍
动漫论坛网站是由SpringBoot+Mybatis开发的,旅游网站分为前台和后台,前台为用户浏览,后台进行数据管理
后台功能如下:
- 帖子管理
- 分类管理
- 标签管理
前台功能如下:
- 帖子浏览
- 帖子搜索
- 分类查找
- 标签查找
- 帖子留言
- 帖子回复
二、技术框架
- 后端:SpringBoot,jpa
- 前端:jquery
三、安装教程
-
用idea打开项目
-
在idea中配置jdk环境
-
配置maven环境并下载依赖
-
新建数据库,导入数据库文件
-
在application.properties文件中将数据库账号密码改成自己本地的
-
启动运行,管理员账号密码 admin/123456
四、项目截图
五、相关代码
IndexController
package com.cartoonbbs.cartoonbbs.web;import com.cartoonbbs.cartoonbbs.servive.ControllerService;
import com.cartoonbbs.cartoonbbs.servive.TagService;
import com.cartoonbbs.cartoonbbs.servive.TypeService;
import com.cartoonbbs.cartoonbbs.vo.CartoonQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.web.PageableDefault;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;@Controller
public class IndexController {@Autowiredprivate ControllerService controllerService;@Autowiredprivate TypeService typeService;@Autowiredprivate TagService tagService;@GetMapping("/")public String index(@PageableDefault(size = 8,sort = {"updateTime"},direction = Sort.Direction.DESC) Pageable pageable,Model model) {model.addAttribute("page",controllerService.listCartoon(pageable));model.addAttribute("types",typeService.listTypeTop(6));model.addAttribute("tags",tagService.listTagTop(10));model.addAttribute("recommendCartoon",controllerService.listRecommendCartoonTop(8));return "index";}@PostMapping("/search")public String search(@PageableDefault(size = 8,sort = {"updateTime"},direction = Sort.Direction.DESC) Pageable pageable,@RequestParam String query, Model model){model.addAttribute("page",controllerService.listCartoon("%"+query+"%",pageable));model.addAttribute("query",query);return "search";}@GetMapping("/details/{id}")public String details(@PathVariable Long id, Model model) {//model.addAttribute("cartoon",controllerService.getCartoon(id));model.addAttribute("cartoon",controllerService.getAndConvert(id));return "details";}}
LoginController
package com.cartoonbbs.cartoonbbs.web.admin;import com.cartoonbbs.cartoonbbs.dao.UserRepository;
import com.cartoonbbs.cartoonbbs.po.User;
import com.cartoonbbs.cartoonbbs.servive.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;import javax.servlet.http.HttpSession;@Controller
@RequestMapping("/admin")
public class LoginController {@Autowiredprivate UserService userService;@GetMappingpublic String loginPage(){return "admin/login";}@PostMapping("login")public String login(@RequestParam String username,@RequestParam String password,HttpSession session,RedirectAttributes attributes){User user=userService.checkUse(username,password);if(user!=null){user.setPassword(null);session.setAttribute("user",user);return "admin/index";}else {attributes.addFlashAttribute("message","用户名和密码错误");return "redirect:/admin";}}@GetMapping("/logout")public String logout(HttpSession session){session.removeAttribute("user");return "redirect:/admin";}
}
大家点赞、收藏、关注、评论啦 、👇🏻点开下方卡片👇🏻关注后回复 104