基于javaweb+mysql的springboot校园运动会管理系统(java+springboot+vue+elementui+mysql)
运行环境
Java≥8、MySQL≥5.7、Node.js≥10
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SpringBoot校园运动会管理系统(java+springboot+vue+elementui+mysql)
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 5.7/8.0版本均可; 5.是否Maven项目:是;
技术栈
1.后端:SpringBoot+Mybaits 2.前端:Vue +ElementUI +HTML+CSS+JS
使用说明
项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
@RequestMapping(value = "/reg.do", method = RequestMethod.POST)
public ModelAndView regSubmit(HttpServletRequest req, HttpServletResponse resp) {
User user = new User();
String name = req.getParameter("Nickname");
String pwd = req.getParameter("pwd");
user.setName(name);
user.setPassword(pwd);// 密码应该采用hash保存
userService.insert(user);
return null;
@RequestMapping(value = "/register.do", method = RequestMethod.POST)
try {
adminService.delete(id);
}catch (Exception e){
return AjaxResult.errorInstance("有关联数据,不可删除");
return AjaxResult.successInstance("删除成功");
/**
* 显示以通过的成绩的信息
* @param request
* @param response
* @return
*/
@RequestMapping("/showscore.do")
if(!admin.getPassword().equals(oldPassword)){
return AjaxResult.errorInstance("旧密码错误");
//修改密码并提交
admin.setPassword(password);
adminService.update(admin);
return AjaxResult.successInstance("修改密码成功,重新登录生效");
/**
* 转到裁判添加界面
* @return
*/
@RequestMapping(value = "add.do", method = RequestMethod.GET)
@ResponseBody
@RequestMapping(value = "update.do",method = RequestMethod.POST)
public AjaxResult update(User user){
// 判断基本信息是否填写完整
if (CommonUtils.isEmpty(user.getName()) ){
return AjaxResult.errorInstance("请填写名称");
if (CommonUtils.isEmpty(user.getPhone()) ){
return AjaxResult.errorInstance("请填写手机号");
if (CommonUtils.isEmpty(user.getPassword()) ){
return AjaxResult.errorInstance("请填写密码");
if (CommonUtils.isEmpty(user.getPassword()) ){
return AjaxResult.errorInstance("裁判员信息编辑失败");
return AjaxResult.successInstance("裁判员信息编辑成功");
/**
* 删除裁判信息
* @return
*/
@ResponseBody
@PostMapping("/delete.do")
public AjaxResult deleteAdminUser(@RequestParam(name = "id")Long id){
try {
adminService.delete(id);
* 运动员控制器
*/
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserScoreService userScoreService;
@Autowired
private UserService userService;
@RequestMapping(value = "list.do", method = RequestMethod.GET)
public ModelAndView list() {
return AjaxResult.errorInstance("请填写名称");
if (CommonUtils.isEmpty(user.getPhone()) ){
return AjaxResult.errorInstance("请填写手机号");
if (CommonUtils.isEmpty(user.getPassword()) ){
return AjaxResult.errorInstance("请填写密码");
if (CommonUtils.isEmpty(user.getPassword()) ){
return AjaxResult.errorInstance("请填写队伍");
User byMobile = userService.findByMobile(user.getPhone());
if(byMobile!=null){
if(!byMobile.getId().equals(user.getId())){
return AjaxResult.errorInstance("该手机号已存在");
//修改密码并提交
admin.setPassword(password);
adminService.update(admin);
return AjaxResult.successInstance("修改密码成功,重新登录生效");
/**
* 转到裁判添加界面
* @return
*/
@RequestMapping(value = "add.do", method = RequestMethod.GET)
public ModelAndView add() {
return new ModelAndView("/adminUser/add");
/**
* 添加裁判账号
return modelAndView;
}else{
ModelAndView modelAndView = new ModelAndView("adminUser/login");
modelAndView.addObject("message", "账号密码错误");
return modelAndView;
@RequestMapping(value = "adminscore.do")
public ModelAndView adminscore(HttpServletRequest request, HttpServletResponse response) {
ModelAndView modelAndView = new ModelAndView("adminUser/listscore");
AdminScore adminScore = new AdminScore();
Admin admin = (Admin) request.getSession().getAttribute("adminUser");
adminScore.setAdminId(admin.getId());
List<AdminScore> AdminScoreList = adminScoreService.selectList(adminScore);
return modelAndView;
/**
* 裁判员列表
* @return
*/
@GetMapping("/edit.do")
public ModelAndView edit(@RequestParam(name="id")Long id) {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("/adminUser/edit");
Admin admin = adminService.selectOne(id);
比赛项目controller:
/**
* 比赛项目controller
*/
@Controller
@RequestMapping("/project")
public class ProjectController {
@Autowired
private ProjectUserSerivce projectUserSerivce;
@InitBinder
protected void initBinder(WebDataBinder binder) {
if(!savePathFile.exists()){
//若不存在改目录,则创建目录
savePathFile.mkdir();
String filename = new Date().getTime()+"."+suffix;
try {
//将文件保存至指定目录
photo.transferTo(new File(savePath+filename));
}catch (Exception e) {
// TODO Auto-generated catch block
ret.put("type", "error");
ret.put("msg", "保存文件异常!");
//遍历当前项目的所有项目并且将项目保存在score里的select标签里
return new ModelAndView("/adminUser/score2");
/**
* 裁判员列表
* @return
*/
@GetMapping("/admin_user_list.do")
public ModelAndView adminUserList() {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("/adminUser/user_list");
List<Admin> admins = adminService.selectList();
modelAndView.addObject("adminList", admins);
return modelAndView;
/**
return AjaxResult.successInstance("提交成功");
} catch (NumberFormatException e) {
return AjaxResult.successInstance("失败,只能填数字");
/**
* @param projectId
* @param userId
* @param request
* @return
*/
/**
* 显示用户页面的用户的当前的所有项目
* @param id
if(!user.getPassword().equals(oldPassword)){
return AjaxResult.errorInstance("旧密码错误");
// 修改密码并提交
user.setPassword(password);
userService.update(user);
return AjaxResult.successInstance("修改密码成功,重新登录生效");
比赛项目controller:
/**
* 比赛项目controller
*/
@Controller
return modelAndView;
/**
* 添加一名成员成绩
*/
@RequestMapping(value = "/addscore.do")
public ModelAndView addscore(Long projectId, Long userId, HttpServletRequest request) {
User user = new User();
user.setId(userId);
user = userService.selectOne(user);
ModelAndView modelAndView = new ModelAndView("/score/addscore");
modelAndView.addObject("user", user);
return modelAndView;
/**
* @return
*/
@RequestMapping(value="verify.do",method=RequestMethod.GET)
public ModelAndView verify()
List<Project> projectList=projectService.selectList();
ModelAndView modelAndView = new ModelAndView("/project/review_list");
modelAndView.addObject("projectList",projectList);
return modelAndView;
/**
* 上传图片
* @param photo
if (!admin.getPassword().equals(repassword)) {
return AjaxResult.errorInstance("两次密码不一致");
if (StringUtils.isEmpty(admin.getPhone())) {
return AjaxResult.errorInstance("请填写手机号");
if (StringUtils.isEmpty(admin.getRealname())) {
return AjaxResult.errorInstance("请填写名称");
if (adminService.findByName(admin.getName()) != null) {
return AjaxResult.errorInstance("该账号已存在");
admin.setRoleid(true);
if (adminService.insert(admin) <= 0) {
return AjaxResult.errorInstance("裁判员添加失败,请联系管理员");
return AjaxResult.successInstance("提交成功");
/**