Java课程设计-学生成绩管理系统

Java课程设计-学生成绩管理系统????作者主页:疯狂行者????????简介:Java领域新星创作者????、【计算机源码之家】公号作者✌简历模板、学习资料、面试题库【关注我,都给你】????????文末获取源码联系????工具下载链接????????????:JDK版本下载Eclipse下载链接Mysql下载链接tomcat下载链接向日葵远程工具Maven下载链接计算机课程设计|毕业设计之学生成绩管理系统代码-基于JavaWeb的学生成绩管理系统文章目录计算机课程设计|毕业设计之学生成绩管理系统代码-基于Ja

大家好,又见面了,我是你们的朋友全栈君。

?作者主页:疯狂行者?

?简介:Java领域新星创作者?、【计算机源码之家】公号作者✌ 简历模板、学习资料、面试题库【关注我,都给你】?

?文末获取源码联系?

工具下载链接???:
JDK版本下载
Eclipse下载链接
Mysql下载链接
tomcat下载链接
向日葵远程工具
Maven下载链接

计算机课程设计|毕业设计之学生成绩管理系统代码-基于JavaWeb的学生成绩管理系统


前言

本次文章主要是介绍学生成绩管理系统的功能,系统分为三个角色,管理员、教师、学生

一、系统功能

1.1 开发环境

  • 开发语言:Java
  • 技术:JavaWeb【Servlet】
  • 数据库:MySQL
  • 架构:B/S
  • 源码类型: Web
  • 编译工具:Idea、Eclipse、MyEclipse (选其一)
  • 其他:jdk1.8、Tomcat8.5 、Navicat

1.2 管理员功能

– 登录
– 个人信息
– 课程管理
– 成绩管理
– 教师管理
– 学生管理
– 查询所有账号

1.3 教师功能

– 登录
– 个人信息
– 课程管理
– 成绩管理
– 学生管理

1.4 学生功能

– 登录
– 个人信息【查询登录密码,查询个人信息,修改个人信息】
– 成绩管理

2.3 部分功能模块展示

☀️登录☀️
在这里插入图片描述
☀️登录☀️
在这里插入图片描述
☀️学生总成绩☀️
在这里插入图片描述
☀️成绩管理☀️
在这里插入图片描述
☀️教师管理☀️
在这里插入图片描述
☀️学生管理☀️
在这里插入图片描述
☀️用户信息☀️
在这里插入图片描述

三、部分代码设计

3.1.登录

代码如下(示例):

	protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 
   
        String account = req.getParameter("account");
        String password = req.getParameter("password");
        String accounttype = req.getParameter("accounttype");
        req.getSession().removeAttribute("message");
//        System.out.println(url);
        switch (accounttype){ 
   
            case "管理员":
                AdminDao adminDao=new IAdminimpl();
                List<Admin> admins = adminDao.getAdmin(account);
                if(admins.size()>0){ 
   
                    Admin admin = admins.get(0);
                    if(admin.getPassword().equals(password)){ 
   
                        req.getSession().setAttribute("admin",admin);
                        resp.sendRedirect("admin/index.jsp");
                    }
                }
                break;
            case "医生":
                DoctorDao doctorDao=new DoctorDao();
                String where="where account =?";
                List<Doctor> doctors = doctorDao.query(where, new Object[]{ 
   account});
                if(doctors.size()>0){ 
   
                    Doctor doctor = doctors.get(0);
                    if(doctor.getPassword().equals(password)){ 
   
                        req.getSession().setAttribute("doctor",doctor);
                        resp.sendRedirect("doctor");
                        return;
                    }
                }
                req.getSession().setAttribute("message","用户名或密码错误!!");
                req.getRequestDispatcher("doctor/login.jsp").forward(req,resp);
                break;
            case "患者":
                PatientDao patientDao=new PatientDao();
                List<Patient> patients = patientDao.query("account",account);
                if(patients.size()>0){ 
   
                    Patient patient = patients.get(0);
                    if(patient.getPassword().equals(password)){ 
   
                        req.getSession().setAttribute("patient",patient);
                        String url= (String) req.getSession().getAttribute("url");
                        if(url==null)
                            url="index.jsp";
                        resp.sendRedirect(url);
                        return;
                    }
                }
                req.getSession().setAttribute("message","用户名或密码错误!!");
                resp.sendRedirect("login.jsp");
                break;
        }
    }

3.2.学生总成绩

代码如下(示例):

public static boolean sendMail(String to, String content){ 
   
        Properties prop = new Properties();
        prop.setProperty("mail.host", host);
        prop.setProperty("mail.smtp.auth", "true");
        prop.setProperty("mail.transport.protocol", "smtp");
       /* prop.put("mail.smtp.ssl.enable", true);*/
        // 开启SSL加密,否则会失败
        try { 
   
            MailSSLSocketFactory sf = new MailSSLSocketFactory();
            sf.setTrustAllHosts(true);
            prop.put("mail.smtp.ssl.enable", "true");
            prop.put("mail.smtp.ssl.socketFactory", sf);
            Session session = Session.getInstance(prop);
           /* prop.put("mail.smtp.ssl.enable", true);*/
            Transport ts = session.getTransport();
            // 连接邮件服务器:邮箱类型,帐号,授权码代替密码(更安全)
            ts.connect(host,from, password);//后面的字符是授权码           // 创建邮件对象
            MimeMessage message = new MimeMessage(session);
            // 指明邮件的发件人
            message.setFrom(new InternetAddress(from));
            message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
            // 邮件的标题
            message.setSubject("在线预约挂号系统");
            // 邮件的文本内容
            /*int code=100000+(int)(899999*Math.random());
            System.out.println(code);*/
            message.setContent(content, "text/html;charset=UTF-8");
            // 发送邮件
            ts.sendMessage(message, message.getAllRecipients());
            ts.close();
            return true;
        } catch (Exception e) { 
   
            e.printStackTrace();
            return false;
        }
    } 

总结

获取源码联系:

大家点赞、收藏、关注、评论啦 、查看??????微信公众号获取联系方式??????

打卡 文章 更新 14/ 365天

精彩专栏推荐订阅:在 下方专栏????????

Java毕设项目实战

Java课设项目实战

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160578.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js匿名函数和立即执行函数[通俗易懂]

    js匿名函数和立即执行函数[通俗易懂]js匿名函数和立即执行函数1.匿名函数a)写法b)特点2.立即执行函数a)写法b)特点c)示例1.匿名函数匿名函数又叫拉姆达函数,使用前需要先赋值。a)写法 //hello();//会报错,因为定义在后,使用在前。 varhello=function(){ console.log(“hello”); }; hello();//hellob)特点匿名函数…

    2022年9月1日
    2
  • 最新Android基础入门教程目录(完结版)

    最新Android基础入门教程目录(完结版)第一章:环境搭建与开发相关(已完结10/10)https://blog.csdn.net/coder_pig/article/details/50000773Android基础入门教程——1.1背景相关与系统架构分析Android基础入门教程——1.2开发环境搭建Android基础入门教程——1.2.1使用Eclipse+ADT+SDK开发AndroidAPPAndroid基础入…

    2022年6月12日
    27
  • PX震荡波_常用的黑客代码大全

    PX震荡波_常用的黑客代码大全一、前言前面的文章主要都是一些理论知识为主,很多读者朋友看了之后可能会有点枯燥,里面很多公式看起来也比较晦涩,今天起给大家讲一讲如何用开源飞控PX4飞好一架飞机,飞机主要以多旋翼和垂起固定翼为主。使用开源飞控PX4来调试一套无人机是一个较为复杂的过程,不过前期的电机电调选型、桨叶的配套,电池的设计这些内容都不是我擅长的内容,如果有需求的话以后有机会请我专业的朋友给大家来写一写这方面的内容。我要…

    2022年10月13日
    2
  • python协程系列_python asyncio

    python协程系列_python asyncio协程的定义协程(Coroutine),又称微线程,纤程。(协程是一种用户态的轻量级线程)作用:在执行A函数的时候,可以随时中断,去执行B函数,然后中断B函数,继续执行A函数(可以自动

    2022年7月29日
    8
  • IPv6/IPv4 + aliddns 实现黑群晖外网控制和访问

    IPv6/IPv4 + aliddns 实现黑群晖外网控制和访问前言一直想弄台黑群NAS,但因为穷!一直没入,一直用的是玩客云,但玩客云满足不了我的需求,但正好搭上蜗牛星际的车!J1900+4G内存+16G固态+4盘位+千兆网口才380元,性价比是真的高,再买两个二手的2T机械硬盘(一个做备份盘),还有一个自己的500G机械硬盘,目前完全够用。目前主流内网穿透方案目前内网穿透有如下几种方案frp、ngrok等转发工具,需要一个有公网ip的服务器,…

    2022年6月7日
    71
  • Idea激活码最新教程2023.2.2版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2023.2.2版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2023 2 2 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2023 2 2 成功激活

    2025年5月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号