Java项目:ssm赛事打分系统

作者主页:夜未央5788

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

赛事评分系统,SSM框架。该项目分管理员、裁判、选手三个用户角色。

管理员主要功能:
首页、选手管理、裁判管理、赛事管理
裁判主要功能:
首页、评分;
选手主要功能:
首页、报名赛事、查看成绩;

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 
6.数据库:MySql 5.7版本;
7.lombok插件 注:必须安装,否则会报错

技术栈

1. 后端:Spring SpringMVC MyBatis
2. 前端:Layui

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 将项目中database.properties配置文件中的数据库配置改为自己的配置;
3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
4. 运行项目,输入localhost:8080/xxx 登录

运行截图

 

 

 

 

 

 

相关代码 

JudgeController

package com.thunder.controller;

import com.alibaba.fastjson.JSONObject;
import com.thunder.pojo.Judge;
import com.thunder.pojo.Mark;
import com.thunder.pojo.Match;
import com.thunder.pojo.User;
import com.thunder.service.impl.JudgeServiceImpl;
import com.thunder.service.impl.LoginServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.Date;
import java.util.Map;


@Controller
@RequestMapping("/judge")
public class JudgeController {

    @Autowired
    JudgeServiceImpl judgeService;
    @Autowired
    LoginServiceImpl loginService;

    /**
     * 跳转 裁判页面
     */
    @RequestMapping("/toJudgePage")
    public String toJudgePage() {
        return "/pages/judge";
    }

    /**
     * 跳转 评分
     */
    @RequestMapping("/toMark")
    public String toMark() {
        return "/pages/judgeMarkPlayer";
    }

    /**
     * 获取所有裁判
     */
    @RequestMapping(value = "/getAllJudge", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String getAllJudge() {
        //阿里巴巴的json数据格式交互
        JSONObject object = new JSONObject();
        object.put("code", 200);//原来是 code : 0
        object.put("msg", "");
        object.put("data", judgeService.getAllJudge());
        object.put("count", judgeService.getAllJudge().size());

        System.out.println("数据库数据:" + judgeService.getAllJudge().toString());
        return object.toJSONString();
    }

    /**
     * 根异步请求 删除裁判
     */
    @RequestMapping("/deleteJudgeById")
    @ResponseBody
    public String deleteJudgeById(@RequestParam Map map) {
        String currentJudge = (String) map.get("index");
        int result = judgeService.deleteJudgeById(currentJudge);
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }
    }

    //添加 裁判
    @RequestMapping("/addJudgeAjax")
    @ResponseBody
    public String addJudgeAjax(@RequestParam Map map) {
        System.out.println(map);

        String jid = (String) map.get("jid");
        String jname = (String) map.get("jname");
        String jage = (String) map.get("jage");
        String jsex = (String) map.get("jsex");
        System.out.println(jid + " " + jname + " " + jage + " " + jsex);
       
        //判断裁判、选手 写入 user表
        if (jid.contains("P")) {
            System.out.println("注册选手");
            int registerPlayer = loginService.addUser(new User(jid, password));
            if (registerPlayer > 0) {
                System.out.println("注册选手成功!");
            }
        } else if (jid.contains("J")) {
            System.out.println("注册裁判");
            int registerPlayer = loginService.addUser(new User(jid, password));
            if (registerPlayer > 0) {
                System.out.println("注册裁判成功!");
            }
        } else if (jid.equals("admin")) {
            System.out.println("管理员");
        } else {

        }
        //添加 裁判
        int result = judgeService.addJudgeAjax(new Judge(jid, jname, jage, jsex));
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }
    }

    //裁判打分
    @RequestMapping("/mark")
    @ResponseBody
    public String mark(@RequestParam Map map) {
        System.out.println("进入 后台 ==== 打分");
        String pid = (String) map.get("pid");
        String item = (String) map.get("mid");
        String jid = (String) map.get("jid");
        String score = (String) map.get("score");
        System.out.println("分数是:" + score + item + jid + pid);
        int result = judgeService.mark(new Mark(score, item, jid, pid));
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }
    }


}

LoginController

package com.thunder.controller;

import com.thunder.pojo.User;
import com.thunder.service.impl.JudgeServiceImpl;
import com.thunder.service.impl.LoginServiceImpl;
import com.thunder.service.impl.PlayServiceImpl;
import com.thunder.util.CurrentUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpSession;
import java.util.Map;

@Controller
public class LoginController {

    @Autowired
    LoginServiceImpl loginService;
    @Autowired
    JudgeServiceImpl judgeService;
    @Autowired
    PlayServiceImpl playService;

    /**
     * 登录验证
     */
    @RequestMapping(value = "/login", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String Login(@RequestParam Map user, HttpSession session) {
        String account = (String) user.get("account");
        String password = (String) user.get("password");
        if (account.contains("P")) {
            System.out.println("选手登录");
            if (LoginRoute(account, password, session).equals("1")) {
                return "选手登录";
            } else {
                return "error";
            }
        } else if (account.contains("J")) {
            System.out.println("裁判登录");
            if (LoginRoute(account, password, session).equals("1")) {
                return "裁判登录";
            } else {
                return "error";
            }
        } else if (account.equals("admin")) {
            System.out.println("管理员登录");
            if (LoginRoute(account, password, session).equals("1")) {
                return "admin";
            } else {
                return "error";
            }
        } else {
            return "error";
        }
    }

    //判断用户
    public String LoginRoute(String account, String password, HttpSession session) {
        User loginUser = loginService.getUser(account);
        if (loginUser != null) {
            if (!loginUser.getPwd().equals(password)) {
                return "error";
            } else {
                session.setAttribute(CurrentUser.CURRENT_USER, loginUser);
                System.out.println("session放入" + loginUser.getAccount());
                return "1";
            }
        } else {
            return "error";
        }
    }

    /**
     * 注册用户
     */
    @RequestMapping("/register")
    @ResponseBody
    public String Register(@RequestParam Map user) {
        String loginuser = (String) user.get("user");
        String password = (String) user.get("pwd");

        System.out.println(user.get("user"));
        System.out.println(user.get("pwd"));



        User newUser = new User((String) user.get("user"), (String) user.get("pwd"));
        int result = loginService.addUser(newUser);
        //添加成功 返回 大于0
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }
    }

    /**
     * 判断 注册用户 是否存在数据库中 ajax
     */
    @RequestMapping("/registerAccount")
    @ResponseBody
    public String registerAccount(@RequestParam Map user) {
        System.out.println("当前新增用户:" + user.get("user"));
        String newUser = (String) user.get("user");
        User userNewUser = loginService.getUser(newUser);
        if (userNewUser != null) {
            return "error";
        } else {
            return "1";
        }
    }

    /**
     * 去往主页面
     */
    @RequestMapping("/toMain")
    public String toMain() {
        return "pages/main";
    }

    /**
     * 退出登录
     */
    @RequestMapping("/exitLogin")
    public String exitLogin(HttpSession session) {
        session.removeAttribute(CurrentUser.CURRENT_USER);
        //session.invalidate();
        if (session == null) {
            System.out.println("当前用户:" + session.getAttribute(CurrentUser.CURRENT_USER));
            return "redirect:/login.jsp";
        } else {
            System.out.println("当前用户:" + session.getAttribute(CurrentUser.CURRENT_USER));
            return "redirect:/login.jsp";
        }

    }


}

MatchController

package com.thunder.controller;

import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.thunder.pojo.Match;
import com.thunder.pojo.SignUp;
import com.thunder.service.impl.MatchServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.List;
import java.util.Map;

@Controller
@RequestMapping("/match")
public class MatchController {

    @Autowired
    MatchServiceImpl matchService;

    /**
     * 跳转到 赛事界面
     */
    @RequestMapping("/toMatchPage")
    public String toMatchPage() {
        return "/pages/match";
    }

    /**
     * 获取所有赛事 admin页面展示
     */
    @RequestMapping(value = "/getAllMatch", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String getAllMatch() {
        //阿里巴巴的json数据格式交互
        JSONObject object = new JSONObject();
        object.put("code", 200);//原来是 code : 0
        object.put("msg", "");
        object.put("data", matchService.getAllMatch());
        object.put("count", matchService.getAllMatch().size());

        System.out.println("数据库数据:" + matchService.getAllMatch().toString());
        return object.toJSONString();
    }

    /**
     * 获取赛事 ajax 下拉列表
     */
    @RequestMapping(value = "/getAllMatchAjax", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String getAllMatchAjax() {
        List<Match> allMatch = matchService.getAllMatch();
        JSONArray array = JSONArray.parseArray(JSON.toJSONString(allMatch));
        System.out.println(array.toJSONString());

        return array.toJSONString();
    }

    /**
     * 删除操作 异步请求
     */
    @RequestMapping("/deleteMatchById")
    @ResponseBody
    public String deleteMatchById(@RequestParam Map map) {
        int currentMatchId = Integer.parseInt((String) map.get("index"));
        int result = matchService.deleteMatchById(currentMatchId);
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }
    }

    /**
     * 添加赛事
     */
    @RequestMapping(value = "/addMatchAjax", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String addMatchAjax(@RequestParam Map map) {
        //System.out.println(map);

        String mid = (String) map.get("mid");
        String mname = (String) map.get("mname");
        String mtime = (String) map.get("mtime");

        DateTime parseDate = DateUtil.parse(mtime, "yyyy-MM-dd");
        java.sql.Date mtimeDate = new java.sql.Date(parseDate.getTime());
        System.out.println("类型" + mtimeDate.getClass().getName());
        System.out.println("mid=" + mid + "mname=" + mname + "mtime=" + mtimeDate);
        int result = matchService.addMatchAjax(new Match(mid, mname, mtimeDate));
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }


    }

    //选手报名赛事
    @RequestMapping(value = "/signInMatch", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String signInMatch(@RequestParam Map map) {
        System.out.println(map);
        String pid = (String) map.get("pid");
        String saishi = (String) map.get("saishi");
        String properties = (String) map.get("properties");
        System.out.println("pid " + pid + " saishi:" + saishi + "性质:" + properties);
        int result = matchService.signInMatch(new SignUp(pid, saishi, properties));
        if (result > 0) {
            return "1";
        } else {
            return "error";
        }
    }

    /***
     *查看已报名
     */
    @RequestMapping(value = "/alreadySignIn", produces = "application/json;charset=UTF-8")
    @ResponseBody
    public String alreadySignIn(@RequestParam Map map) {
        JSONObject object = new JSONObject();

        String pid = (String) map.get("pid");
        System.out.println("选手:" + pid + "选择的赛事");
        List<SignUp> signUpList = matchService.alreadySignIn(pid);
        object.put("code", 200);//原来是 code : 0
        object.put("msg", "");
        object.put("data", signUpList);
        object.put("count", signUpList.size());

        System.out.println("已报名:" + signUpList);
        return object.toJSONString();
    }
}

如果也想学习本系统,下面领取。关注并回复:034ssm 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
"SSM服装出租服装店租赁服装管理系统" 是一个基于Java项目。该系统旨在帮助服装店有效管理其库存、租赁流程和顾客信息,以提升运营效率。 该系统的主要功能包括库存管理,租赁管理和顾客管理。首先,库存管理模块允许店主添加、删除和更新服装的详细信息,包括服装名称、类型、尺码和价格等。店主可以通过该模块随时了解实时库存情况,并及时补充库存。其次,租赁管理模块允许店主记录租赁订单,包括租赁日期、租赁时长和顾客信息等。系统可以自动计算租赁费用并生成相应的发票。最后,顾客管理模块允许店主维护顾客的基本信息,并记录顾客的租赁历史以及积累的租赁次数和会员等级。 为了提高系统的稳定性和安全性,该项目采用SSM(Spring+Spring MVC+MyBatis)框架进行开发。Spring作为业务层框架,负责处理系统的业务逻辑;Spring MVC作为视图层框架,负责接收用户请求和展示数据;MyBatis作为持久层框架,负责与数据库进行交互。此外,项目还使用MySQL作为数据库,保证数据的可靠存储和快速检索。 该项目的优势在于提高了服装店的管理效率。通过系统化的库存管理和租赁管理,店主可以实时掌握库存情况和租赁订单,避免了重复和遗漏,提高了工作效率。而顾客管理模块的引入,使店主能够更好地了解顾客的需求和偏好,从而提供个性化的服务,增加顾客的满意度和忠诚度。 综上所述,SSM服装出租服装店租赁服装管理系统是一个基于Java开发的项目,旨在提高服装店的库存管理、租赁管理和顾客管理效率。该系统通过SSM框架和MySQL数据库的应用,保证了系统的稳定性和安全性。它的优势在于提高了店主的工作效率和顾客满意度,帮助服装店实现更好的运营表现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜未央5788

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值