源码获取:俺的博客首页 "资源" 里下载!
项目介绍
springboot知识管理系统
环境需要
1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows7/8/101G内存以上;或者MacOS;
4.数据库:MySql5.7/8.0版本均可;
5.是否Maven项目:是;
技术栈
后端:SpringBoot+Mybaits
前端:Vue+elementui
使用说明
项目运行:
1.使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2.使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行mavenclean;maveninstall命令;
3.将项目中application.yml配置文件中的数据库配置改为自己的配置;
4.运行项目,在浏览器中输入地址:
前台地址:http://localhost:8080/springbootrpj39/front/index.html
后台地址
http://localhost:8080/springbootrpj39/admin/dist/index.html
管理员abo密码abo
用户:用户1密码:123456
注意项目文件路径中不能含有中文、空格、特殊字符等,否则图片会上传不成功。
用户管理控制层:
@Controller
@RequestMapping("/User")
public class UserController {
@Autowired
private UserService userService;
@Autowired
private PowerService powerService;
@Autowired
private RoleService roleService;
@Autowired
private NoticeService noticeService;
@RequestMapping("/Main")
public String res(HttpServletRequest request){
String time = DateUtil.getStringToday();
request.getSession().setAttribute("time", time);
Notice notice = new Notice();
List<Notice> list = noticeService.queryAll(notice);
notice = list.get(0);
User user = userService.selectByPrimaryKey(notice.getUserid());
notice.setUserid(user.getName());
request.getSession().setAttribute("notice", notice);
return "Main";
}
@RequestMapping("/changePa")
public String res1(){
return "changePass";
}
@RequestMapping("/Login")
public ModelAndView login(HttpServletRequest request,String id,String password) throws Exception{
ModelAndView mav = new ModelAndView();
User user1 = userService.selectByPrimaryKey(id);
if(user1 == null || !password.equals(user1.getPassword())){
mav.setViewName("index");
request.getSession().setAttribute("info", "error");
return mav;
}else{
Role role = new Role();
role.setRoleid(user1.getRoleid());
List<Role> list =roleService.QueryAll(role);
role =list.get(0);
request.getSession().setAttribute("roleName", role.getRolename());
Power power = powerService.selectByPrimaryKey(role.getPowerid());
if(!StringUtil.isNullOrEmpty(power.getPower())){
request.getSession().setAttribute("power", power.getPower());
}
String time = DateUtil.getStringToday();
request.getSession().setAttribute("time", time);
request.getSession().setAttribute("user", user1);
mav.setViewName("redirect:/User/Main");
}
return mav;
}
@RequestMapping("/updateStudent")
public String update(User user){
userService.updateByPrimaryKey(user);
return "redirect:/User/student";
}
@RequestMapping("/updateTeacher")
public String updatet(User user){
userService.updateByPrimaryKey(user);
return "redirect:/User/teacher";
}
@RequestMapping("/updatePa")
public String updatePa(String userID,String password){
User user = new User();
System.out.println(userID);
User user1 = userService.selectByPrimaryKey(userID);
user1.setPassword(password);
userService.updateByPrimaryKey(user1);
return "Main";
}
@RequestMapping("/delete")
public String delete(String ID){
userService.deleteByPrimaryKey(ID);
return "redirect:/User/queryAll";
}
@RequestMapping("/teacher")
public String QueryAllTeacher(HttpServletRequest request,User user){
List<User> list = userService.QueryAllTeacher(user);
request.setAttribute("list", list);
if(null != user.getName()){
request.setAttribute("name", user.getName());
}
if(null != user.getMobile()){
request.setAttribute("mobile", user.getMobile());
}
return "teacher";
}
@ResponseBody
@RequestMapping("/jsonteacher")
public String QueryAllTeacherjson(HttpServletRequest request,User user){
List<User> list = userService.QueryAllTeacher(user);
JSONObject json = new JSONObject();
return json.toJSONString(list);
}
@RequestMapping("/student")
public String QueryAllStudent(HttpServletRequest request,User user){
List<User> list = userService.QueryAllStudent(user);
request.setAttribute("list", list);
if(null != user.getName()){
request.setAttribute("name", user.getName());
}
if(null != user.getMobile()){
request.setAttribute("mobile", user.getMobile());
}
return "student";
}
@RequestMapping("/addteacher")
public String addUser(User user){
String passWord = "123456";
user.setPassword(passWord);
user.setType(Constans.TEACHER);
userService.insert(user);
return "redirect:/User/teacher";
}
@RequestMapping("/addstudent")
public String addStudent(User user){
String passWord = "123456";
user.setPassword(passWord);
user.setType(Constans.STUDENT);
userService.insert(user);
return "redirect:/User/student";
}
@ResponseBody
@RequestMapping("/queryOne")
public String queryOne(String ID){
User user = new User();
user.setId(ID);
List<User> list = userService.QueryAll(user);
user = list.get(0);
JSONObject json = new JSONObject();
String data = json.toJSONString(user);
return data;
}
@RequestMapping("/quit")
public ModelAndView quit(HttpServletRequest request) throws Exception{
ModelAndView mav = new ModelAndView();
HttpSession session1 = request.getSession();
session1.invalidate();
request.getSession().setAttribute("info", "quit");
mav.setViewName("index");
return mav;
}
}
登录控制层:
@Controller
public class LoginController {
private static final Logger LOGGER = LoggerFactory.getLogger(LoginController.class);
@Autowired
AdminService adminService;
@GetMapping("/cs")
public String cs() {
return "cs";
}
@GetMapping("/login")
public String login() {
return "login";
}
@PostMapping("/login")
@ResponseBody
public Msg login(String name, String pwd, HttpSession httpSession) {
name = name.trim();
// LOGGER.info("{}--{}",name,pwd);
return adminService.login(name, pwd, httpSession);
}
}
管理员管理控制层:
@RestController
@RequestMapping("/admin")
@Slf4j
public class AdminController {
@Autowired
AdminService adminService;
/**
* 功能描述:管理员登录
*/
@RequestMapping(value = "/login.do",method = RequestMethod.GET)
public ResponseBo login(HttpServletRequest request){
log.info("admin/AdminController======>login 进入方法");
ResponseBo responseBo=new ResponseBo();
String name=request.getParameter("name");
String password=request.getParameter("password");
String token=request.getHeader("accessToken");
if (token!=null) {
if (TokenSign.verify(token)) {
ADMINS admins = new ADMINS();
admins.setName(TokenSign.getUsername(token));
admins.setId(Integer.parseInt(TokenSign.getUserId(token)));
admins.setPic(TokenSign.getUserPic(token));
responseBo.setResult(admins);
return responseBo;
} else {
responseBo.setResMsg("token失效");
return responseBo;
}
}
try {
log.info("admin/AdminController======>login 进入接口,入参:name=",name);
responseBo=adminService.login(name,password);
} catch (Exception e) {
log.error("admin/AdminController======>login 登录方法出错:{}",e);
responseBo.setResMsg("登录失败");
responseBo.setResult(e);
}
return responseBo;
}
/**
* 功能描述:获取所有用户信息
*/
@RequestMapping(value = "/getUsers.do",method = RequestMethod.GET)
public ResponseBo getUsers(HttpServletRequest request){
log.info("admin/AdminController======>getUsers 进入方法");
ResponseBo responseBo=new ResponseBo();
try {
log.info("admin/AdminController======>getUsers 进入接口,入参:无");
responseBo=adminService.getUsers();
} catch (Exception e) {
log.error("admin/AdminController======>getUsers 方法出错:{}",e);
responseBo.setResMsg("查询失败");
responseBo.setResult(e);
}
return responseBo;
}
/**
* 功能描述:通过id删除用户
*/
@RequestMapping(value = "/deleteUserById.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo deleteUserById(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String userid=request.getParameter("userid");
int userid2=Integer.parseInt(userid);
responseBo=adminService.deleteUserById(userid2);
} catch (Exception e) {
log.error("删除失败",e);
responseBo.setResMsg("删除失败");
}
return responseBo;
}
/**
* 功能描述:获取所有被封禁用户信息
*/
@RequestMapping(value = "/getBanUsers.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getBanUsers(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
responseBo=adminService.getBanUsers();
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
return responseBo;
}
/**
* 功能描述:封禁用户
*/
@RequestMapping(value = "/banUser.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo banUser(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String userid=request.getParameter("userid");
int userid2=Integer.parseInt(userid);
responseBo=adminService.banUser(userid2);
} catch (Exception e) {
log.error("封禁失败",e);
responseBo.setResMsg("封禁失败");
}
return responseBo;
}
/**
* 功能描述:解封用户
*/
@RequestMapping(value = "/unbanUser.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo unbanUser(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String userid=request.getParameter("userid");
int userid2=Integer.parseInt(userid);
responseBo=adminService.unbanUser(userid2);
} catch (Exception e) {
log.error("解封失败",e);
responseBo.setResMsg("解封失败");
}
return responseBo;
}
/**
* 功能描述:修改管理员信息
*/
@RequestMapping(value = "/update.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo update(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String adminid=request.getParameter("adminid");
String name=request.getParameter("name");
int adminid2=Integer.parseInt(adminid);
StandardMultipartHttpServletRequest thisRequest = (StandardMultipartHttpServletRequest )request;
MultipartFile file = thisRequest.getFile("pic");
responseBo=adminService.update(request,file,name,adminid2);
} catch (Exception e) {
log.error("更新失败",e);
responseBo.setResMsg("更新失败");
}
log.info("AdminController===>update方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:根据id删除图片
*/
@RequestMapping(value = "/deleteImgById.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo deleteImgById(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String imgid=request.getParameter("imgid");
int imgid2=Integer.parseInt(imgid);
responseBo=adminService.deleteImgById(imgid2);
} catch (Exception e) {
log.error("删除失败",e);
responseBo.setResMsg("删除失败");
}
log.info("AdminController===>deleteImgById 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:添加新类型
*/
@RequestMapping(value = "/addType.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo addType(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("type");
responseBo=adminService.addType(type);
} catch (Exception e) {
log.error("添加失败",e);
responseBo.setResMsg("添加失败");
}
log.info("AdminController===>addType 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:获取所有类型
*/
@RequestMapping(value = "/getTypes.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getTypes(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
responseBo=adminService.getTypes();
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
log.info("AdminController===>getTypes 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:根据id获取类型
*/
@RequestMapping(value = "/getTypeById.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getTypeById(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("typeid");
int typeid=Integer.parseInt(type);
responseBo=adminService.getTypeByid(typeid);
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
log.info("AdminController===>getTypeById 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:修改类型
*/
@RequestMapping(value = "/updateType.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo updateType(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("typeid");
String name=request.getParameter("name");
int typeid=Integer.parseInt(type);
responseBo=adminService.updateType(typeid,name);
} catch (Exception e) {
log.error("更新失败",e);
responseBo.setResMsg("更新失败");
}
log.info("AdminController===>updateType 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:根据id删除类型
*/
@RequestMapping(value = "/deleteType.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo deleteType(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String type=request.getParameter("typeid");
int typeid=Integer.parseInt(type);
responseBo=adminService.deleteType(typeid);
} catch (Exception e) {
log.error("删除失败",e);
responseBo.setResMsg("删除成功");
}
log.info("AdminController===>deleteType 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:获取待审核图片
*/
@RequestMapping(value = "/getAuditImgs.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo getAuditImgs(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
responseBo=adminService.getAuditImgs();
} catch (Exception e) {
log.error("查询失败",e);
responseBo.setResMsg("查询失败");
}
log.info("AdminController===>getAuditImgs 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:通过审核图片
*/
@RequestMapping(value = "/auditImg.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo auditImg(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String img=request.getParameter("imgid");
int imgid=Integer.parseInt(img);
responseBo=adminService.auditImg(imgid);
} catch (Exception e) {
log.error("审核失败",e);
responseBo.setResMsg("审核失败");
}
log.info("AdminController===>auditImg 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:不通过审核图片
*/
@RequestMapping(value = "/unauditImg.do",method = {RequestMethod.POST, RequestMethod.GET})
public ResponseBo unauditImg(HttpServletRequest request){
ResponseBo responseBo=new ResponseBo();
try {
String img=request.getParameter("imgid");
int imgid=Integer.parseInt(img);
responseBo=adminService.unauditImg(imgid);
} catch (Exception e) {
log.error("审核失败",e);
responseBo.setResMsg("审核失败");
}
log.info("AdminController===>unauditImg 方法 出参:responseBo="+responseBo);
return responseBo;
}
/**
* 功能描述:获取充值表数据
*/
@RequestMapping("/getDeposits.do")
public ResponseBo getDeposits(){
ResponseBo responseBo=new ResponseBo();
log.info("进入 getDeposits 方法");
try {
responseBo=adminService.getDeposits();
} catch (Exception e) {
log.info("getDeposits 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:给用户添加积分,删除充值表
*/
@Caching(evict={@CacheEvict(value="pointscache",allEntries=true)})
@RequestMapping("/addPoint.do")
public ResponseBo addPoint(POINTS points){
ResponseBo responseBo=new ResponseBo();
log.info("进入 addPoint 方法");
try {
responseBo=adminService.addPoint(points);
} catch (Exception e) {
log.info("addPoint 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:获取评论
*/
@RequestMapping("/getComments.do")
public ResponseBo getComments(){
ResponseBo responseBo=new ResponseBo();
log.info("进入 getComments 方法");
try {
responseBo=adminService.getComments();
} catch (Exception e) {
log.info("getComments 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:获取举报列表
*/
@RequestMapping("/getComplains.do")
public ResponseBo getComplains(){
ResponseBo responseBo=new ResponseBo();
log.info("进入 getComplains 方法");
try {
responseBo=adminService.getComplains();
} catch (Exception e) {
log.info("getComplains 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
/**
* 功能描述:处理举报评论
*/
@RequestMapping("/delComplains.do")
public ResponseBo delComplains(int compid){
ResponseBo responseBo=new ResponseBo();
log.info("进入 delComplains 方法");
try {
responseBo=adminService.delComplains(compid);
} catch (Exception e) {
log.info("delComplains 方法出现异常");
e.printStackTrace();
}
return responseBo;
}
}
源码获取:俺的博客首页 "资源" 里下载!