博主简介:🍅博客专家、Java领域优质创作者、特邀作者、华为云/阿里云等平台优质作者、专注于IT技术领域和学生毕业项目实战,指导学生毕业设计并参与学生毕业答辩指导🍅

技术范围:✌Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能与大数据、单片机开发、物联网设计与开发设计、安卓app、大数据、物联网、机器学习等设计与开发、简历模板、学习资料、面试题库、就业指导、技术互助等✌。

业务领域:✌免费功能设计定制、任务书、中期检查PPT、开题报告、系统功能实现、项目定制、论文辅导、撰写和降重、长期答辩辅导答疑、远程会议一对一专业讲解答辩辅导、模拟演练答辩、和代码讲解理解逻辑思路✌。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习

摘要

随着教育事业的发展,对教学质量的评价不仅表现在学生质量上,而且还反映在教职工队伍素质上;为了提高教师的工作效率,分析了学校日常教学管理工作的统计特点,加强对教师绩效的考核,而绩效考核的主要指标是教师工作量的大小。因此需要做出套及时有效的系统,帮助教学管理人员对教师工作量进行管理和查询;解决由人工操作带来的许多错误和诸多不便,减轻管理人员的劳动强度,达到更好地利用资源,提高工作效率;同时也便于教师本人对工作量的查询及核实。在实际应用中,这套系统的必要性将得到充分的体现。

文档针对在教师工作量计算系统信息数据规模大,管理员和教师用户需要对教师工作量涉及到的信息进行管理的需求,设计了教师工作量计算系统的框架,给出了教师工作量计算系统的总体设计,并对教师工作量计算系统的架构及关键模块的实现过程进行了详细论述。采用Java语言和MySQL数据库技术,基于springboot框架实现了一个完整系统的设计,为使用者提供了良好的教师工作量计算系统。

第1章 绪论

1.1 研究背景

随着计算机技术的飞速发展,计算机在各行各业中的应用迅速普及,计算机的应用在工作量管理中同样也得到了飞速的发展。对于工作量管理最基层的管理之一工作量管理来说,利用计算机实现工作量管理等日常工作来提高办事效率,是适应当今社会发展要求,推动工作量管理领域现代化快速发展的必要条件。虽然工作量只是工作量管理工作的一个环节,但是工作量管理是一项琐碎、 复杂而又十分细致的工作。日常等工作量非常的大,如果用手工来操作,不仅工作量大而且容易出现错误。而利用计算机就不同了,一个完善的工作量管理系统可以帮你解决所有这方面的问题。同时计算机具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长等。这些优点能够极大地提高工作量管理管理的效率达到事半功倍的效果。

1.2 研究意义

我们现在所做的课题就是在目前的情形下,从学校的现有的条件实际出发,利用个人所拥有的计算机硬件设备和软件条件,从思想上,工作思维和工作方式做起,实现一整套关于学校用户工作量管理系统的软件来实现一些基本信息的维护。为学校的工作量管理人员减少点负担,从根本上解决用手工操作工作量大且容易出错的问题,同时,这也是学校工作量管理管理领域以后发展的必然趋势。

第2章 相关技术

2.1开发技术

本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。后端部分:采用SpringBoot作为开发框架,同时集成MyBatis、Redis等相关技术。

2.2 Java简介

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,Java servlet API,JSP(Java server pages),和XML技术。Java语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务,开发者只需要知道一些概念就能够编写出一些应用程序。Java程序相对较小,其代码能够在小机器上运行。Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于企业Web应用程序开发和移动应用程序开发。
Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了改进。

2.3 MVVM模式

MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。

2.4 B/S结构

B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为客户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题。

2.5 MySQL数据库

Mysql的语言是非结构化的,用户可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。

数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。

第3章 系统分析

系统分析是开发一个项目的先决条件,通过系统分析可以很好的了解系统的主体用户的基本需求情况,同时这也是项目的开发的原因。进而对系统开发进行可行性分析,通常包括技术可行性、经济可行性等,可行性分析同时也是从项目整体角度进行的分析。然后就是对项目的具体需求进行分析,分析的手段一般都是通过用户的用例图来实现。下面是详细的介绍。

3.1 可行性分析

(1)经济可行性:
经济可行性在此仅代表网站的运维成本,开发成本不在此考虑。
目前该模式下的教师工作量计算系统的数量日益增多,网上进行教师工作量计算的相关信息的查询管理变得平民化普及化,用户人数呈上升趋势,当用户人数庞大了,运维成本可以由广告费进行填补,包括开发成本。
所以经济可行性没有问题。

(2)操作可行性:
此次项目设计参考了几个该模式下网站的开发案例,对他们的操作界面分析,将众多案例结合在一起,突出以人为本简化操作,所以具有基本计算机知识的人都会操作本项目。
因此操作可行性也没有问题。

(3)技术可行性:
技术可行性指的是对于搭建框架的可行性,以及有更优秀的技术出现时系统的技术更新换代的纳新性如何,开发时间成本费用比如何。
现有的Java语言能够迎合所有电子商务系统的搭建,系统技术设备的可扩展性可以由springboot构架的资源优势予以促成。我采用了编译器eclipse+java+mysql用以运行整体程序。
综上所述技术可行性也没有问题。

(4)法律可行性:
从开发者角度来看,springboot框架是网上开源且免费的,在知识产权方面不会产生任何法律纠纷。
从用户使用角度来看,只要不再系统上贩卖违禁品,对系统做出条约协议,杜绝非法支付即可。

综上所述法律可行性也没有问题。

第4章 系统设计

本章主要讨论的内容包括教师工作量计算系统的功能模块设计、数据库系统设计。

4.1 系统架构设计

本教师工作量计算系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_毕设设计


表现层(UI):又称UI层,主要完成本教师工作量计算系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本教师工作量计算系统时的舒适度。UI的界面设计也要适应不同版本的教师工作量计算系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。

业务逻辑层(BLL):主要完成本教师工作量计算系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。

数据层(DL):由于本教师工作量计算系统的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本教师工作量计算系统的数据存储和管理功能。

4.2 系统功能模块设计

4.2.1整体功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本教师工作量计算系统中的用例。那么接下来就要开始对本教师工作量计算系统的架构、主要功能和数据库开始进行设计。教师工作量计算系统根据前面章节的需求分析得出,其总体设计模块图如图3-2所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_java_02

4.2.2用户模块设计

本系统的用户包括管理员、教师。两种用户模块的功能基本是相同的,教师比管理员多了一个注册功能,所以以用户模块的结构图为例进行分析,用户模块结构图为例进行分析,如下图:

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_java_03

4.2.3 教师工资管理模块设计

教师工作量计算系统可以进行教师工资管理,教师用户可以在线查看工资详情,具体的结构图如下:

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_课程设计_04

4.2.4课程信息管理模块设计

教师工作量计算系统中,教师可以查看课程信息详情,管理员后台进行课程信息进行查询、重置、删除、添加等相应操作,其模块功能结构,具体的结构图如下:

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_05

第5章 系统详细设计

教师工作量计算系统的详细设计与实现主要是根据前面的教师工作量计算系统的需求分析和教师工作量计算系统的总体设计来设计页面并实现业务逻辑。主要从教师工作量计算系统界面实现、业务逻辑实现这两部分进行介绍。

5.1用户功能模块

5.1.1 教师首页界面

当进入教师工作量计算系统的时候,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是公告信息,再往下是各种各样的系统信息,其主界面展示如下图5-1所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_06

5.1.2 个人管理界面

用户登录/注册成功之后可以修改自己的基本信息。修改页面的表单中每一个input的name值都要与实体类中的参数相匹配,在用户点击修改页面的时候,如果改后用户名与数据库里面重复了,页面会提示该用户名已经存在了,否则通过Id来查询用户,并将用户的信息修改为表单提交的数据。其个人信息界面展示如下图5-2所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_课程设计_07


个人信息逻辑代码如下:

/**
     * 注册
     * @param user
     * @return
     */
    @PostMapping("register")
    public Map<String, Object> signUp(@RequestBody User user) {
        // 查询用户
        Map<String, String> query = new HashMap<>();
        query.put("username",user.getUsername());
        List list = service.select(query, new HashMap<>()).getResultList();
        if (list.size()>0){
            return error(30000, "用户已存在");
        }
        user.setUserId(null);
        user.setPassword(service.encryption(user.getPassword()));
        service.save(user);
        return success(1);
}

/**
     * 用户ID:[0,8388607]用户获取其他与用户相关的数据
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "user_id")
    private Integer userId;

    /**
     * 账户状态:[0,10](1可用|2异常|3已冻结|4已注销)
     */

    @Basic
    @Column(name = "state")
    private Integer state;

    /**
     * 所在用户组:[0,32767]决定用户身份和权限
     */

    @Basic
    @Column(name = "user_group")
    private String userGroup;

    /**
     * 上次登录时间:
     */

    @Basic
    @Column(name = "login_time")
    private Timestamp loginTime;

    /**
     * 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时
     */

    @Basic
    @Column(name = "phone")
    private String phone;

    /**
     * 手机认证:[0,1](0未认证|1审核中|2已认证)
     */

    @Basic
    @Column(name = "phone_state")
    private Integer phoneState;

    /**
     * 用户名:[0,16]用户登录时所用的账户名称
     */

    @Basic
    @Column(name = "username")
    private String username;

    /**
     * 昵称:[0,16]
     */

    @Basic
    @Column(name = "nickname")
    private String nickname;

    /**
     * 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成
     */

    @Basic
    @Column(name = "password")
    private String password;

    /**
     * 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时
     */

    @Basic
    @Column(name = "email")
    private String email;

    /**
     * 邮箱认证:[0,1](0未认证|1审核中|2已认证)
     */

    @Basic
    @Column(name = "email_state")
    private Integer emailState;

    /**
     * 头像地址:[0,255]
     */

    @Basic
    @Column(name = "avatar")
    private String avatar;

    /**
     * 创建时间:
     */

    @Basic
    @Column(name = "create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Timestamp createTime;

    @Basic
    @Transient
    private String code;
}

5.1.3 教师登录界面

教师工作量计算系统中的前台上注册后的教师是可以通过自己的账户名和密码进行登录的,当教师输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到教师工作量计算系统的首页中;否则将会提示相应错误信息,教师登录界面如下图5-3所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_08

5.1.4公告信息界面

当点击导航栏上的“公告信息”的时候,就会进入对应的界面查看公告信息,公告信息界面如下图5-4所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_09

5.1.5 课程信息界面

教师登录系统后可以点击“课程信息”菜单,对课程安排信息进行查看了解等,课程信息界面如下图5-5所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_java_10

5.1.6 课程资料界面

教师点击“课程资料”菜单,可以对课程资料信息进行查看了解或下载等,课程资料界面如下图5-6所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_11

5.1.7 教师工作量界面

当教师点击“教师工作量”菜单后就进入教师工作量界面,可以查看教师总工作量详细信息。教师工作量界面如下图5-7所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_课程设计_12

5.1.8教师工资界面

教师进入系统,可以在线查看教师工资、奖金等详细信息,教师工资界面如下图5-8所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_java_13

5.2管理员功能模块

5.2.1 教师工资管理界面

教师工作量计算系统中的可对教师的总工作量进行查询、重置、删除、添加等相应操作。界面如下图5-9所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_14

5.2.2 人员管理界面

教师工作量计算系统中的管理人员在“教师用户”这一菜单是中可以对注册的教师用户进行管控,这里以教师用户管理为例。界面如下图5-10所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_课程设计_15

5.2.3 教师工资管理界面

管理员可对教师的工资信息进行查询、重置、删除、添加等相应操作。,界面如下图5-11所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_java_16

5.2.4 课程信息管理界面

教师工作量计算系统中的管理人员在“课程信息”中可对教师的课程信息进行查询、重置、删除、添加等相应操作。其管理界面如下图5-12所示。

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_spring boot_17

文档截图

【万字文档+PPT+源码】基于springboot+vue教师工作量计算系统-可用于毕设-课程设计-练手学习_毕设设计_18