项目编号:BS-PT-019
后台开发技术:SSM框架
前端开发技术:Bootstrap+Jquery+Ajax
开发工具:IDEA / ECLIPSE
基于MAVEN开发
数据库:MYSQL5.7
JDK:1.8
本项目基于SSM实现的校友录平台,功能完整:主要包含校友通讯录模块,论坛模块,新闻模块,招聘模块,校内各组织管理模块,班级管理模块等,功能还是比较完整的,运行无误。数据库采用MYSQL,开发工具为IDEA或Eclipse.
下面展示一下系统的部分功能;
访问http://localhost:8080/ar-portal/index.action
输入密码: black / 12345678
登陆:
首页
新闻中心
班级通讯录
校友组织:
校友论坛
职业招聘
校园服务
个人后台管理中心
我的班级
我的论坛
我的招聘
系统管理员进入:
http://localhost:8080/ar-portal/index.action
sa / 12345678
后台管理主界面
信息中心
组织管理
招聘管理
用户管理
权限管理
数据字典管理
本系统功能完整,全面,运行无误,结构清晰,使用SSM框架开发,适合做毕业设计使用。
部分核心实现代码:
package com.xzit.ar.manage.controller.user; import com.xzit.ar.common.base.BaseController; import com.xzit.ar.common.exception.UtilException; import com.xzit.ar.common.page.Page; import com.xzit.ar.common.po.user.User; import com.xzit.ar.common.util.CommonUtil; import com.xzit.ar.manage.service.user.UserService; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import javax.annotation.Resource; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * TODO ${TODO} * * @author znz * @Date:2021/5/19 17:16. */ @Controller @RequestMapping("/user") public class UserController extends BaseController { @Resource private UserService userService; /** * TODO 加载用户管理界面 * @return */ @RequestMapping("") public String index() { return "user/user-index"; } /** * TODO 查询用户列表 * @param model * @param query * @param state * @return */ @RequestMapping("/queryUser") public String queryUser(Model model, String query, String state, String isAdmin) { // 分页类 Page<Map<String, Object>> page = new Page<>(getPageIndex(), getPageSize()); Map<String, Object> user = new HashMap<>(); // 参数校验 if (CommonUtil.isNotEmpty(query)) { user.put("query", "%" + query + "%"); } if (CommonUtil.isNotEmpty(state)) { user.put("state", state); } if (CommonUtil.isNotEmpty(isAdmin)) { user.put("isAdmin", isAdmin); } page.setQueryMap(user); // 查询用户 userService.queryUser(page); // 数据返回 model.addAttribute("page", page); model.addAttribute("query", query); model.addAttribute("state", state); model.addAttribute("isAdmin", isAdmin); return "user/user-query"; } @RequestMapping("/add") public String userAddPage(Model model) { model.addAttribute("sex", false); return "user/user-add"; } @RequestMapping(value = "/add/submit", method = RequestMethod.POST) public String userAddSubmit(Model model, @RequestParam("account") String account, @RequestParam("trueName") String trueName, @RequestParam("isAdmin") String isAdmin, @RequestParam("email") String email, @RequestParam("introduce") String introduce) throws UtilException { if (CommonUtil.isNotEmpty(account)) { Map<String, Object> _user = userService.getUserByAccount(account); if (_user != null) { setMessage(account + " 已存在"); System.out.println(account + " 已存在"); return "redirect:/user.action"; } else { User user = new User(); user.setAccount(account); user.setTrueName(trueName); user.setEmail(email); user.setIsAdmin(isAdmin); user.setIntroduce(introduce); user.setState("A"); user.setPassword(CommonUtil.md5("12345678")); user.setImageId(1); user.setStateTime(new Date()); user.setCreateTime(new Date()); userService.addUser(user); } } return "redirect:/user.action"; } }
/** * TODO ${TODO} * * @author znz * @Date:2021/5/19 17:16. */ package com.xzit.ar.manage.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import com.xzit.ar.common.base.BaseController; import com.xzit.ar.common.constant.WebConstant; /** * TODO ${TODO} * * @author znz * @Date:2021/5/19 17:16. */ @Controller @RequestMapping("") public class ManageController extends BaseController { /** * @Description: TODO 空请求跳转<br> * @author znz <br> * @date 2021年12月23日 下午12:36:56 <br> */ @RequestMapping(value = "/manage", method = RequestMethod.GET) public String index(ModelMap map) throws Exception { return "main/index"; } /** * @Description: TODO 加载 欢迎界面 <br> * @author znz <br> * @date 2016年1月3日 下午4:23:41 <br> */ @RequestMapping("/manage/welcome") public String welcomeManage(Model model) { return "main/welcome"; } /** * @Description: TODO 错误请求跳转<br> * @author znz <br> * @date 2021年12月23日 上午11:46:19 <br> */ @RequestMapping(method = RequestMethod.GET, value = "/error/{errCode}") public String error(@PathVariable("errCode") String errCode) { return "404".equals(errCode) ? WebConstant.PAGE_ERROR_404 : WebConstant.PAGE_ERROR_500; } }
/** * @Title: ControllerReflect.java <br> * @Package com.xzit.ar.manage.controller <br> * @Description: TODO <br> * @author znz <br> * @date 2021年1月3日 上午10:25:46 <br> * @version V1.0 <br> */ package com.xzit.ar.manage.controller.right; import java.util.List; import javax.annotation.Resource; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import com.xzit.ar.common.base.BaseController; import com.xzit.ar.common.exception.ServiceException; import com.xzit.ar.common.page.Page; import com.xzit.ar.common.po.role.Right; import com.xzit.ar.common.util.privilege.PrivilegeUtil; import com.xzit.ar.manage.service.right.RightService; /** * @ClassName: ControllerReflect <br> * @Description: TODO <br> * @author znz <br> * @date 2021年1月3日 上午10:25:46 <br> * @version V1.0 <br> */ @Controller @RequestMapping("/right") public class RightController extends BaseController { @Resource private RightService rightService; /** * @Description: TODO 加载权限管理索引界面<br> * @author znz <br> * @date 2021年1月4日 上午11:39:33 <br> */ @RequestMapping("/indexRight") public String indexRight() { return "authority/right/right-index"; } @RequestMapping("/queryRights") public String queryRights(Model model, String queryInput) throws ServiceException { Page<Right> page = new Page<Right>(); page.setPageIndex(getPageIndex()); page.setPageSize(getPageSize()); rightService.queryRights(page, queryInput); model.addAttribute("page", page); model.addAttribute("queryInput", queryInput); return "authority/right/right-query"; } /** * @Title: addRight * @Description: TODO addRight */ @RequestMapping("/addRight") public String addRight() { return null; } @RequestMapping("/updateRight") public String updateRight(Model model, @RequestParam("rightId") Integer rightId) throws ServiceException { Right right = rightService.selectById(rightId); model.addAttribute("right", right); setMessage(model, "只能改变权限名、是否公开"); return "authority/right/right-update"; } @RequestMapping("/updateRightSubmit") public String updateRightSubmit(Model model, Right right) throws ServiceException { int row = 0; if (right != null) { // 更新操作 row = rightService.updateRight(right); } // 结果判断 if (row < 1) { setMessage(model, "修改失败!"); } else { setMessage(model, "修改成功!"); } return "forward:queryRights.action"; } /** * @Title: scanAddRights * @Description: TODO 扫描并添加未被添加的权限 */ @RequestMapping("/scanAddRights") public String scanAddRights(Model model) throws ServiceException { int newRights = 0; // 索引当前所有权限url List<String> rightUrlList = PrivilegeUtil.detectAllRightURL(); for (String rightUrl : rightUrlList) { // 判断是否存在 if (rightService.selectByRightUrl(rightUrl) == null) { // 生成默认格式right Right right = PrivilegeUtil.makeDefaultRight(rightUrl); // 持久化right if (rightService.saveRight(right) > 0) { newRights++; } } } if (newRights > 0) { setMessage(model, "新增权限" + newRights + "条权限"); } else { setMessage(model, "没有新增权限"); } return "forward:queryRights.action"; } }
/** * @Title: RoleController.java * @Package com.xzit.uscdl.manage.controller.right * @Description: TODO * @author znz * @date 2021年3月15日 下午7:05:25 * @version V1.0 */ package com.xzit.ar.manage.controller.right; import java.util.ArrayList; import java.util.List; import javax.annotation.Resource; import com.xzit.ar.common.base.BaseController; import com.xzit.ar.common.exception.ServiceException; import com.xzit.ar.common.page.Page; import com.xzit.ar.common.po.role.Right; import com.xzit.ar.common.po.role.Role; import com.xzit.ar.common.util.CommonUtil; import com.xzit.ar.manage.service.right.RightService; import com.xzit.ar.manage.service.right.RoleService; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; /** * @author znz * @ClassName: RoleController * @Description: TODO * @date 2021年3月15日 下午7:05:25 */ @Controller @RequestMapping("/role") public class RoleController extends BaseController { @Resource private RoleService roleService; @Resource private RightService rightService; @RequestMapping("") public String index() { return "authority/role/role-index"; } @RequestMapping("/queryRole") public String queryRole(Model model) throws ServiceException { Page<Role> page = new Page<>(getPageIndex(), getPageSize()); // 传递数据 model.addAttribute("page", roleService.queryRole(page)); return "authority/role/role-query"; } @RequestMapping("/edit") public String edit(Model model) { return ""; } @RequestMapping("/editSubmit") public String editSubmit() { return ""; } @RequestMapping("/add") public String add() { return ""; } @RequestMapping("/addSubmit") public String addSubmit() { return ""; } @RequestMapping("/allot") public String allot(Model model, Integer roleId) throws ServiceException { // 传递数据 model.addAttribute("role", roleService.getRoleById(roleId)); // 所有权限 model.addAttribute("rightList", rightService.getIsNotPublicRights()); // 角色已分配的权限 List<Right> roleRights = roleService.getRightsByRole(roleId); List<Integer> rightIds = new ArrayList<>(); for (Right right : roleRights) { rightIds.add(right.getRightId()); } model.addAttribute("roleRights", roleRights); model.addAttribute("rightIds", rightIds); return "authority/role/role-allot"; } @RequestMapping("/allotSubmit") public String allotSubmit(Model model, String rightIds, Integer roleId) throws ServiceException { List<Integer> idList = CommonUtil.splitIds(rightIds); if (roleService.updateRoleRights(roleId, idList) > 0) { setMessage(model, "更新成功"); } else { setMessage(model, "更新失败"); } return "forward:queryRole.action"; } }