宁国网络推广/百度seo排名公司
一、源码特点
java SSM 教师工作量管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,spring+springMVC+mybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
java SSM教师工作量管理系统
二、功能介绍
(1)管理员管理:对管理员信息进行添加、删除、修改和查看
(2)教师类型管理:对教师类型信息进行添加、删除、修改和查看
(3)教师管理:对教师信息进行添加、删除、修改和查看
(4)学期管理:对学期信息进行添加、删除、修改和查看
(5)课程管理:对课程信息进行添加、删除、修改和查看
(6)课程类别管理:对课程类别信息进行添加、删除、修改和查看
(7)科研类别管理:对科研类别信息进行添加、删除、修改和查看
(8)科研管理:对科研信息进行添加、删除、修改和查看
(9)论文著作管理:对论文著作信息进行添加、删除、修改和查看
(10)项目管理:对项目信息进行添加、删除、修改和查看
(11)专利管理:对专利信息进行添加、删除、修改和查看
(12)科研奖励管理:对科研奖励信息进行添加、删除、修改和查看
(13)工作量管理:对工作量信息进行添加、删除、修改和查看
(14)用户登录、个人信息修改
数据库设计
(1)管理员信息表如表5.1所示:
表5.1 管理员信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
(2)教师类型信息表如表5.2所示:
表5.2 教师类型信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | jslxid | INTEGER | 11 | 是 | 教师类型编号 |
2 | lx | VARCHAR | 40 | 否 | 类型 |
3 | sl | VARCHAR | 40 | 否 | 数量 |
(3)教师信息表如表5.3所示:
表5.3 教师信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | jsid | INTEGER | 11 | 是 | 教师编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | jgh | VARCHAR | 40 | 否 | 教工号 |
6 | xb | VARCHAR | 40 | 否 | 性别 |
7 | xl | VARCHAR | 40 | 否 | 学历 |
8 | zzmm | VARCHAR | 40 | 否 | 政治面貌 |
9 | lxfs | VARCHAR | 40 | 否 | 联系方式 |
10 | lx | VARCHAR | 40 | 否 | 类型 |
(4)学期信息表如表5.4所示:
表5.4 学期信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | xqid | INTEGER | 11 | 是 | 学期编号 |
2 | xq | VARCHAR | 40 | 否 | 学期 |
(5)课程表如表5.5所示:
表5.5 课程信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kcid | INTEGER | 11 | 是 | 课程编号 |
2 | kcmc | VARCHAR | 40 | 否 | 课程名称 |
3 | kclb | VARCHAR | 40 | 否 | 课程类别 |
4 | xs | VARCHAR | 40 | 否 | 学时 |
5 | js | VARCHAR | 40 | 否 | 介绍 |
(6)课程类别信息表如表5.6所示:
表5.6 课程类别信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kclbid | INTEGER | 11 | 是 | 课程类别编号 |
2 | lb | VARCHAR | 40 | 否 | 类别 |
科研类别
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kylbid | INTEGER | 11 | 是 | 科研类别编号 |
2 | kylb | VARCHAR | 40 | 否 | 科研类别 |
科研
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | kyid | INTEGER | 11 | 是 | 科研编号 |
2 | kymc | VARCHAR | 40 | 否 | 科研名称 |
3 | lb | VARCHAR | 40 | 否 | 类别 |
4 | js | VARCHAR | 40 | 否 | 介绍 |
5 | ktfx | VARCHAR | 40 | 否 | 课题方向 |
6 | yh | VARCHAR | 40 | 否 | 用户 |
7 | fbsj | VARCHAR | 40 | 否 | 发布时间 |
控制层类
@RequestMapping(value="/add")public String add(gzl gzl,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();//String name=(String)request.getParameter("name");map.put("gzlid", gzl.getGzlid());//工作量编号map.put("xq", gzl.getXq());//学期map.put("xm", gzl.getXm());//姓名map.put("jg", gzl.getJg());//教工map.put("kcmc", gzl.getKcmc());//课程名称map.put("xs", gzl.getXs());//学时map.put("tjrq", gzl.getTjrq());//添加日期map.put("zt", gzl.getZt());//状态String gzlid=(String)gzl.getGzlid();//工作量编号String xq=(String)gzl.getXq();//学期String xm=(String)gzl.getXm();//姓名String jg=(String)gzl.getJg();//教工String kcmc=(String)gzl.getKcmc();//课程名称String xs=(String)gzl.getXs();//学时String tjrq=(String)gzl.getTjrq();//添加日期String zt=(String)gzl.getZt();//状态gzldao.save(map);request.setAttribute("msg", "<script>alert('添加成功');</script>");System.out.println("addok");return "gzl/gzladd";}/**删除 * */@RequestMapping(value="/del")public String del(Integer id,HttpServletRequest request,Map<String,Object> map){// Map<String,Object> map= new HashMap<String,Object>();String a=(String)request.getParameter("keyid");id=Integer.parseInt(a);request.setAttribute("msg", "<script>alert('删除成功');</script>");gzldao.del(id);return selectall(null,map,request);}/*** 修改gzl信息*/@RequestMapping(value="/update")public String update(gzl gzl,HttpServletRequest request,Map<String,Object> map1){Map<String,Object> map= new HashMap<String,Object>();map.put("gzlid", gzl.getGzlid());//工作量编号map.put("xq", gzl.getXq());//学期map.put("xm", gzl.getXm());//姓名map.put("jg", gzl.getJg());//教工map.put("kcmc", gzl.getKcmc());//课程名称map.put("xs", gzl.getXs());//学时map.put("tjrq", gzl.getTjrq());//添加日期map.put("zt", gzl.getZt());//状态String gzlid=(String)gzl.getGzlid();//工作量编号String xq=(String)gzl.getXq();//学期String xm=(String)gzl.getXm();//姓名String jg=(String)gzl.getJg();//教工String kcmc=(String)gzl.getKcmc();//课程名称String xs=(String)gzl.getXs();//学时String tjrq=(String)gzl.getTjrq();//添加日期String zt=(String)gzl.getZt();//状态request.setAttribute("msg", "<script>alert('操作成功');</script>");gzldao.update(map);return selectall(null,map1,request);}/*** 查询gzl信息*/@RequestMapping(value="/modify")public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){String keyid=(String)request.getParameter("keyid");List<Map<String,Object>> list= new ArrayList<Map<String,Object>>();list=gzldao.select(Integer.parseInt(keyid));request.setAttribute("gzlid", list.get(0).get("gzlid"));//工作量编号request.setAttribute("xq", list.get(0).get("xq"));//学期request.setAttribute("xm", list.get(0).get("xm"));//姓名request.setAttribute("jg", list.get(0).get("jg"));//教工request.setAttribute("kcmc", list.get(0).get("kcmc"));//课程名称request.setAttribute("xs", list.get(0).get("xs"));//学时request.setAttribute("tjrq", list.get(0).get("tjrq"));//添加日期request.setAttribute("zt", list.get(0).get("zt"));//状态return "gzl/gzlmodify";}@RequestMapping(value="/detail")public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){String keyid=(String)request.getParameter("keyid");List<Map<String,Object>> list= new ArrayList<Map<String,Object>>();list=gzldao.select(Integer.parseInt(keyid));request.setAttribute("gzlid", list.get(0).get("gzlid"));//工作量编号request.setAttribute("xq", list.get(0).get("xq"));//学期request.setAttribute("xm", list.get(0).get("xm"));//姓名request.setAttribute("jg", list.get(0).get("jg"));//教工request.setAttribute("kcmc", list.get(0).get("kcmc"));//课程名称request.setAttribute("xs", list.get(0).get("xs"));//学时request.setAttribute("tjrq", list.get(0).get("tjrq"));//添加日期request.setAttribute("zt", list.get(0).get("zt"));//状态return "gzl/gzldetail";}
持久层
public void save(Map<String, Object> map) {sqlSession.insert("com.gzl.insertgzl", map);}/*** 删除aa* @param id*/public void del(Integer id) {sqlSession.delete("com.gzl.delgzl", id);}/*** 修改gzl信息* @param map*/public void update(Map<String, Object> map) {sqlSession.update("com.gzl.updategzl", map);}/*** 查询gzl信息* @param id* @return */public List<Map<String, Object>> select(Integer id) {return sqlSession.selectList("com.gzl.selectgzl", id) ; }/*** 查询gzl信息* * @return */public List<Map<String, Object>> selectAll(Map<String, Object> map) {return sqlSession.selectList("com.gzl.selectall", map) ; }
三、注意事项
1、管理员账号:admin 密码:admin 数据库配置文件datasource.properties
2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
3、数据库文件名是jspssmgzl.sql,系统名称ssmgzl
4、系统首页地址:http://127.0.0.1:8080/ssmgzl/login.jsp
四 系统实现
源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
相关文章:

java SSM教师工作量管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计
一、源码特点 java SSM 教师工作量管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要…...

大数据技术之Hive(超级详细)
第1章 Hive入门 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计。 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。 本质是:将HQL转化成MapReduce程序 …...

NVMe over Fabrics with SPDK with iRDMA总结 - 1
1.0 Introduction简介 NVM Express* (NVMe*) drives are high-speed, low-latency, solid-state drives (SSDs), that connect over the server Peripheral Component Interconnect Express* (PCIe*) bus. NVM Express* (NVMe*) 硬盘是高速、低延迟的固态硬盘 (SSD),通过服…...

【PTA刷题】求链式线性表的倒数第K项(代码+详解)
文章目录 题目代码详解 题目 给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字。 输入格式: 输入首先给出一个正整数K,随后是若干非负整数,最后以一个负整数表示结尾(该负数不算在序列内&#…...

VSCode 创建工作区,多文件夹终端切换
VSCode 创建工作区的好处有以下几点: 项目结构清晰:每个工作区都有自己的文件夹结构,可以更好地组织和管理项目文件。版本控制:VSCode 支持多种版本控制系统,如Git,可以在工作区内进行代码的版本管理。插件…...

高阶函数(js的问题)
(1)函数可以作为参数被传递 (2)函数可以作为返回值输出 4-1.函数作为参数传递 Array.prototype.sort方法: var array [10,5,12,3];array.sort();//array:[10,12,3,5]//如代码那样,排序的结果并不是我们想要…...

android-android源码目录
android源码目录 Android.bp art bionic bootable bootstrap.bash build build.sh compatibility cts dalvik developers development device external frameworks: Android 系统的核心框架代码av: 该目录包含与音视频相关的框架和库,如音频解码器、视频编码器、多…...

Json格式化
Json格式化 大家好,我是微赚淘客机器人的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! Json格式化:让数据更亮眼,解密Json的奇妙世界 在现代Web开发中,Json(JavaScript Object N…...

数据可视化设计:让数据故事更有说服力
写在开头 在数字化的时代,数据如同一把锁住的宝剑,等待我们挥舞。然而,唯有通过巧妙运用数据可视化的原则和技术,我们才能真正解锁数据的力量,创造出令人信服的数据故事。本文将深入研究数据可视化设计的奥秘,揭示其中的魔法,让你在数据的海洋中游刃有余,用数据的语言…...

java面试题-Spring事务以及@Transactional注解详解
远离八股文,面试大白话,通俗且易懂 看完后试着用自己的话复述出来。有问题请指出,有需要帮助理解的或者遇到的真实面试题不知道怎么总结的也请评论中写出来,大家一起解决。 java面试题汇总-目录-持续更新中 对于这个面试中高频问到…...

ARM流水灯
.text .global _start _start: LED1 1.RCC时钟使能GPIOE RCC_MP_AHB4ENSETR[4]->1 LDR R0,0x50000a28 LDR R1,[R0] ORR R1,R1,#(0x1<<4) STR R1,[R0] 2.设置PE10为输出模式 GPIOE_MODER[21:20]->01 先清0 LDR R0,0x50006000 LDR R1,[R0] BIC R1,R1,#(0x3<&…...

docker-compose单机容器编排
Dockerfile:先配置好文件,然后build,镜像-------->容器。 docker-conpose 既可以基于dockerfile,也可以基于镜像,一键式拉起镜像和容器。 docker-compose核心就是yml文件,可以定义容器的一切。通过yml配置,直接运行…...

matlab信号分选系统算法-完整算法结构
matlab信号分选系统算法 针对得到的脉冲流PDW进行信号分选,包括重频恒定、重频抖动、重频参差和重频滑变四种脉间调制类型。 这里我们先进行数据的仿真,后续边仿真边分享思路:首先根据信号类型,分别产生重频恒定、重频抖动、重…...

十八)Stable Diffusion使用教程:艺术二维码案例
今天说说怎么样使用SD生成艺术二维码。 我们直接上图。 方式有三种,分别如下: 1)方式一:直接 contronet 的tile模型进行控制 使用QRBTF Classic生成你的二维码。 首先输入网址,选择喜欢的二维码样式(推荐第一种就行): 然后选择相应参数,这里推荐最大的容错率,定…...

【LeetCode每日一题】53. 最大子数组和
https://leetcode.cn/problems/maximum-subarray/description/ 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 方式一:暴力…...

机器学习笔记 什么是协方差矩阵?
一、协方差矩阵 协方差矩阵是一种矩阵,用于表示随机向量中给定的元素对之间的协方差值。协方差矩阵也可以称为色散矩阵或方差-协方差矩阵。这是因为每个元素的方差是沿着矩阵的主对角线表示的。 协方差矩阵始终是方阵。此外,它是半正定且对称的。该矩阵在随机建模和主成分分析…...

使用Python监控服务器在线状态
前言 在公司内网有一台服务器,有动态的公网IP,使用DDNS对外提供服务,但是会因为停电、服务器卡死等原因导致服务器离线。服务器离线后无法及时获知,因此需要实现在服务器离线的时候能够发送消息到手机上。 思路梳理 公司办理的…...

【JAVA】黑马MybatisPlus 学习笔记【二】【核心功能】
2.核心功能 刚才的案例中都是以id为条件的简单CRUD,一些复杂条件的SQL语句就要用到一些更高级的功能了。 2.1.条件构造器 除了新增以外,修改、删除、查询的SQL语句都需要指定where条件。因此BaseMapper中提供的相关方法除了以id作为where条件以外&…...

区块链实验室(30) - 区块链期刊:Distributed Ledger Technologies: Research and Practice
区块链涉及多学科及技术,众多期刊接收区块链文章。Distributed Ledger Technologies: Research and Practice是ACM出版集团的一本期刊。 Distributed Ledger Technologies: Research and Practice创刊历史很短,始于2022年,出版期数也不多。 载…...

Nginx【通俗易懂】《中篇》
目录 1.Url重写rewrite 2.防盗链 3.静态资源压缩 4.跨域问题 1.Url重写rewrite 🤩🤩🤩 1.1.rewrite书写格式 rewrite是实现URL重写的关键指令,根据regex(正则表达式)部分内容,重定向到rep…...

组件的二次封装
在React中,使用扩展运算符(...)来传递props的作用是将一个对象的所有可枚举属性(包括自身的和继承的)复制到新创建的对象中。当我们在二次封装组件时使用它,可以方便地将所有传递给我们的props传递给基础组…...

curl+postman 在java开发中的使用(提高效率)
概念 curl 是一个常用的命令行工具,用于发送各种类型的 HTTP 请求,包括 GET、POST、PUT、DELETE 等。它也可以用来下载文件、上传文件、设置 cookie、发送 multipart/form-data 等等。 使用 调用post接口 实际中的接口: curl --location…...

【电子取证:FTK IMAGER 篇】DD、E01系统镜像动态仿真
文章目录 【电子取证:FTK Imager 篇】DD、E01系统镜像动态仿真一、DD、E01系统镜像动态仿真 (一)使用到的软件 1、FTK Imager (v4.5.0.3)2、VMware Workstation 15 Pro (v15.5.2)(二)FTK Imager 挂载镜像 1、选择 …...

netcat瑞士军刀
netcat瑞士军刀 1、nc简介3、从示例中学习2、命令格式及常用参数 1、nc简介 nc(netcat)是一个短小精悍、功能实用、简单可靠的网络工具,主要有如下作用: (1)端口侦听,nc 可以作为 server 以 TC…...

【征稿倒计时十天】第三届高性能计算与通信工程国际学术会议(HPCCE 2023)
【有ISSN、ISBN号!!往届均已完成EI检索】 第三届高性能计算与通信工程国际学术会议(HPCCE 2023) 2023 3rd International Conference on High Performance Computing and Communication Engineering (HPCCE 2023) 2023年12月22-24日 | 中国哈尔滨 第三…...

编程应用实际场景:台球厅怎么样用电脑给客人计时,台球计时收费系统操作教程
一、前言 准确控制顾客在店内游玩的时间,从而控制店内的各项成本,并提升店内的客流量。在顾客享受计时项目的时候,可以同时添加其他食物消费,并将单据合并统一结账。软件中的会员功能可以为客户办理会员可以使用灯控器控灯&#…...

云计算大屏,可视化云计算分析平台(云实时数据大屏PSD源文件)
大屏组件可以让UI设计师的工作更加便捷,使其更高效快速的完成设计任务。现分享可视化云分析系统、可视化云计算分析平台、云实时数据大屏的大屏Photoshop源文件,开箱即用! 若需 更多行业 相关的大屏,请移步小7的另一篇文章&#…...

高频js-----js执行机制 Event Loop
修改代码,让代码每隔1秒输出1-5 for (var i 0; i < 5;i) {setTimeout(() > {console.log(i)}, 1000)} 首先我们需要了解js的执行机制 (Event Loop) js是单线层,如果现在执行上面代码的话 会输出 5个5 这里不明白的同学可以去看一下我以前发布的关于EventLoop的文章 …...

恢复出厂设置后在 Android 上恢复照片的 6 种常用方法
恢复出厂设置可帮助您删除电子设备的所有信息并将其恢复到原始系统状态。但是,如果您不小心按下了恢复出厂设置按钮并从 Android 设备中删除了所有难忘的照片,该怎么办?好吧,您无需担心,因为可以通过以下一些方法来恢复…...

人工智能_机器学习065_SVM支持向量机KKT条件_深度理解KKT条件下的损失函数求解过程_公式详细推导_---人工智能工作笔记0105
之前我们已经说了KKT条件,其实就是用来解决 如何实现对,不等式条件下的,目标函数的求解问题,之前我们说的拉格朗日乘数法,是用来对 等式条件下的目标函数进行求解. KKT条件是这样做的,添加了一个阿尔法平方对吧,这个阿尔法平方肯定是大于0的,那么 可以结合下面的文章去看,也…...