java SSM毕业文档管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点
    java SSM 毕业文档管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,spring+springMVC+mybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代
码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。

ssm毕业文档管理系统2


二、功能介绍
(1)登录模块,对学生、指导老师、超级管理员的辨别登录
(2)学生以及指导老师信息管理模块,指学生对学生信息的查阅、修改;指导老师信息的查找、修改,以及指导老师对学生信息的查阅、修改;超级管理员对学生、指导老师信息的增加、删
除、修改、查阅
(3)文档上传、审阅、下载、修改和打分模块;学生可以进行上传、修改、删除文档;指导老师可以进行审阅、下载、打分
(4)同一文档的版本控制模块;同一个文档,会进行修改,得到不同的版本,要记录这个版本变更过程,什么时间、什么人做的修改,审核人(指导老师)、中间版本要保留。
(5)个人信息修改

数据库设计

(1)管理员信息表如表3.1所示:

表3.1 管理员信息表

序号

字段名称

数据类型

长度

主键

描述

1

glyid

INTEGER

11

管理员编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

(2)学生信息表如表3.2所示:

表3.2 学生信息表

序号

字段名称

数据类型

长度

主键

描述

1

xsid

INTEGER

11

学生编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

xb

VARCHAR

40

性别

6

zy

VARCHAR

40

专业

7

nl

VARCHAR

40

年龄

8

bj

VARCHAR

40

班级

(3)教师信息表如表3.3所示:

表3.3教师信息表

序号

字段名称

数据类型

长度

主键

描述

1

jsid

INTEGER

11

教师编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

zc

VARCHAR

40

职称

6

nl

VARCHAR

40

年龄

7

zy

VARCHAR

40

专业

(4)毕业文档信息表如表3.4所示:

表3.4 毕业文档信息表

序号

字段名称

数据类型

长度

主键

描述

1

bywdid

INTEGER

11

毕业文档编号

2

wdmc

VARCHAR

40

文档名称

3

lsh

VARCHAR

40

流水号

4

scr

VARCHAR

40

上传人

5

scsj

VARCHAR

40

上传时间

6

bb

VARCHAR

40

版本

7

fj

VARCHAR

40

附件

8

zt

VARCHAR

40

状态

9

df

VARCHAR

40

打分

10

bz

VARCHAR

40

备注

代码设计

@RequestMapping(value="/add")
	public String add(bywd bywd,HttpServletRequest request){
		Map<String,Object> map= new HashMap<String,Object>();
		//String name=(String)request.getParameter("name");

		map.put("bywdid", bywd.getBywdid());//毕业文档编号

		map.put("wdmc", bywd.getWdmc());//文档名称

		map.put("lsh", bywd.getLsh());//流水号

		map.put("scr", bywd.getScr());//上传人

		map.put("scsj", bywd.getScsj());//上传时间

		map.put("bb", bywd.getBb());//版本

		map.put("fj", bywd.getFj());//附件

		map.put("zt", bywd.getZt());//状态

		map.put("df", bywd.getDf());//打分

		map.put("bz", bywd.getBz());//备注



		String bywdid=(String)bywd.getBywdid();//毕业文档编号

		String wdmc=(String)bywd.getWdmc();//文档名称

		String lsh=(String)bywd.getLsh();//流水号

		String scr=(String)bywd.getScr();//上传人

		String scsj=(String)bywd.getScsj();//上传时间

		String bb=(String)bywd.getBb();//版本

		String fj=(String)bywd.getFj();//附件

		String zt=(String)bywd.getZt();//状态

		String df=(String)bywd.getDf();//打分

		String bz=(String)bywd.getBz();//备注

		bywddao.save(map);
		
		
		request.setAttribute("msg", "<script>alert('添加成功');</script>");
		System.out.println("addok");
		return "bywd/bywdadd";
	}
	
	/**删除 
	 * 
	 */
	@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>");
		bywddao.del(id);
		return list(null,map,request);
	}
	/**
	 * 修改bywd信息
	 */
	@RequestMapping(value="/update")
	public String update(bywd bywd,HttpServletRequest request,Map<String,Object> map1){
		Map<String,Object> map= new HashMap<String,Object>();
		map.put("bywdid", bywd.getBywdid());//毕业文档编号

		map.put("wdmc", bywd.getWdmc());//文档名称

		map.put("lsh", bywd.getLsh());//流水号

		map.put("scr", bywd.getScr());//上传人

		map.put("scsj", bywd.getScsj());//上传时间

		map.put("bb", bywd.getBb());//版本

		map.put("fj", bywd.getFj());//附件

		map.put("zt", bywd.getZt());//状态

		map.put("df", bywd.getDf());//打分

		map.put("bz", bywd.getBz());//备注



		String bywdid=(String)bywd.getBywdid();//毕业文档编号

		String wdmc=(String)bywd.getWdmc();//文档名称

		String lsh=(String)bywd.getLsh();//流水号

		String scr=(String)bywd.getScr();//上传人

		String scsj=(String)bywd.getScsj();//上传时间

		String bb=(String)bywd.getBb();//版本

		String fj=(String)bywd.getFj();//附件

		String zt=(String)bywd.getZt();//状态

		String df=(String)bywd.getDf();//打分

		String bz=(String)bywd.getBz();//备注

		request.setAttribute("msg", "<script>alert('修改成功');</script>");
		bywddao.update(map);
		return selectall(null,map1,request);
	}
	/**
	 * 查询bywd信息
	 */
	@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=bywddao.select(Integer.parseInt(keyid));
		request.setAttribute("bywdid", list.get(0).get("bywdid"));//毕业文档编号

		request.setAttribute("wdmc", list.get(0).get("wdmc"));//文档名称

		request.setAttribute("lsh", list.get(0).get("lsh"));//流水号

		request.setAttribute("scr", list.get(0).get("scr"));//上传人

		request.setAttribute("scsj", list.get(0).get("scsj"));//上传时间

		request.setAttribute("bb", list.get(0).get("bb"));//版本

		request.setAttribute("fj", list.get(0).get("fj"));//附件

		request.setAttribute("zt", list.get(0).get("zt"));//状态

		request.setAttribute("df", list.get(0).get("df"));//打分

		request.setAttribute("bz", list.get(0).get("bz"));//备注

		
		return "bywd/bywdmodify";
	}

mybaits 配置文件设计

<!-- 添加用户信息 -->
<insert id="insertbywd"  parameterType="java.util.Map">
 insert  into  bywd(wdmc,lsh,scr,scsj,bb,fj,zt,df,bz)  values(#{wdmc},#{lsh},#{scr},#{scsj},#{bb},#{fj},#{zt},#{df},#{bz})
</insert>

<delete id="delbywd" parameterType="int">
 delete  from  bywd where bywdid=#{bywdid}
</delete>

<update id="updatebywd" parameterType="java.util.Map">
update bywd set wdmc=#{wdmc},lsh=#{lsh},scr=#{scr},scsj=#{scsj},bb=#{bb},fj=#{fj},zt=#{zt},df=#{df},bz=#{bz} where bywdid=#{bywdid}
</update>

<!--  查询返回的是 list<map> -->
<!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean  -->
<select  id="selectbywd"  parameterType="int" resultType="java.util.Map">
  select  * from bywd where bywdid=#{bywdid}
</select>


三、注意事项
    1、管理员账号:admin 密码:admin 数据库配置文件datasource.properties
     2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
    3、数据库文件名是jspssmbywd.sql,系统名称ssmbywd
    4、系统首页地址:http://127.0.0.1:8080/ssmbywd/login.jsp

四 系统实现


源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/225046.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

计算UDP报文CRC校验的总结

概述 因公司项目需求&#xff0c;遇到需要发送带UDP/IP头数据包的功能&#xff0c;经过多次尝试顺利完成&#xff0c;博文记录以备忘。 环境信息 操作系统 ARM64平台的中标麒麟Kylin V10 工具 tcpdump、wireshark、vscode 原理 请查看大佬的博文 UDP伪包头定义&#x…

西工大计算机学院计算机系统基础实验一(函数编写15~17)

还是那句话&#xff0c;稳住心态&#xff0c;稳住心态&#xff0c;稳住心态。心里别慌&#xff0c;心里别慌&#xff0c;心里别慌。 第15题&#xff0c;howManyBits&#xff0c;返回用二进制补码形式表示x所需的最小二进制位数。比如howManyBits(12) 5&#xff0c;12可以被表…

轨迹分析:Palantir评估细胞分化潜能 类似于monocle2

轨迹分析是单细胞测序分析中重要的组成部分&#xff0c;它基于细胞谱系之间“具有中间态细胞”的理论基础&#xff0c;通过结合先验知识&#xff08;细胞注释、markers&#xff09;、细胞基因表达改变等&#xff0c;为在单细胞测序数据赋予了“假时间”&#xff08;pseudotime&…

vscode eide arm-gcc 编译环境搭建调试

安装cube&#xff0c;vscode 1.安装vscode插件 C/C Extension Pack Chinese (Simplified) (简体中文) Language Pack Cortex-Debug Embedded IDE 工具链设置 2.软件工程生成 调试 3.生成工程&#xff0c;导入工程 4. 配置工程 编译完毕

【EI会议征稿】第五届大数据与信息化教育国际学术会议(ICBDIE 2024)

【往届检索】第五届大数据与信息化教育国际学术会议&#xff08;ICBDIE 2024&#xff09; 2023 5th International Conference on Big Data and Informatization Education 第五届大数据与信息化教育国际学术会议&#xff08;ICBDIE 2024&#xff09;定于2024年01月19-21日在…

小型洗衣机哪个牌子质量好?内衣洗衣机便宜好用的牌子

近些年来&#xff0c;由于人们对生活和健康的追求越来越高&#xff0c;所以内衣洗衣机也逐渐走进了人们的视线&#xff0c;许多研究显示&#xff0c;单纯地用手洗内衣是并不能彻底消除内衣物上所残留的细菌&#xff0c;而内衣洗衣机拥有着高温蒸煮的除菌功能&#xff0c;因此可…

【C语言】用户空间使用非缓存内存

在用户空间使用非缓存内存通常不是标准做法&#xff0c;因为非缓存内存的操作与硬件平台紧密相关&#xff0c;并且通常被保留给内核模块或设备驱动程序使用。 一、方法 用户空间程序一般不直接处理非缓存内存问题&#xff0c;因为它们依赖于操作系统来管理内存缓存一致性。尽…

智慧景区(园区)数字孪生可视化GIS解决方案

随着技术的日新月异&#xff0c;景区日常管理及运营中使用到的智慧化工具越来越丰富&#xff0c;智慧化硬件设备也越来越多&#xff0c;而其中各个管理系统往往又是相互独立&#xff0c;形成一个个数据孤岛。智慧景区管理平台就是将各个孤岛中的数据及功能汇集起来&#xff0c;…

叮!速来get宏基因组元素循环耦合分析!

微生物通过一系列氧化还原反应驱动生物地球化学循环&#xff0c;有的微生物可以耦合不同元素的生物地球化学循环&#xff0c;例如碳、氮、磷、硫等&#xff0c;存在复杂的耦合关系。 图 升高(A)和气候变暖(B)对氮库和转化过程影响的概念图 红树林生态系统被认为是生物地球化学…

Elasticsearch:什么是大语言模型(LLM)?

大语言模型定义 大语言模型 (LLM) 是一种深度学习算法&#xff0c;可以执行各种自然语言处理 (natural language processing - NLP) 任务。 大型语言模型使用 Transformer 模型&#xff0c;并使用大量数据集进行训练 —— 因此规模很大。 这使他们能够识别、翻译、预测或生成文…

HASH 哈希算法之MD5 算法

1. 哈希算法&#xff0c;用C 写的 #include <iostream> #include <iomanip> #include <cstring> #include <openssl/md5.h> #include <stdio.h>using namespace std;int main() {string str "hello world";unsigned char digest[MD5…

网络安全(一)--网络环境构成,系统的安全

2. 网络攻防环境 目标 了解攻防环境构成了解入侵检测系统&#xff08;平台&#xff09;的部署位置 2.1. 环境构成 2.1.1. 环境框图 一个基本的网络攻防实验环境包括&#xff1a;靶机、攻击机、入侵检测分析系统、网络连接四部分组成。 一个基础的网络攻防实验环境需要如下…

【c语言指针详解】指针的高级应用

目录 一、指针和字符串 1.1 字符串和字符数组的关系 1.2 字符串常量和字符指针的使用 1.3 字符串函数库的指针参数 1.3.1 strlen 函数 1.3.2 strcpy 函数 1.3.3 strcat 函数 1.3.4 strcmp 函数 二、指针的高级应用 2.1 函数指针的定义和使用 2.2 回调函数和函数指针数组的应用 …

2022年第十一届数学建模国际赛小美赛D题野生动物贸易是否应长期禁止解题全过程文档及程序

2022年第十一届数学建模国际赛小美赛 D题 野生动物贸易是否应长期禁止 原题再现&#xff1a; 野生动物市场被怀疑是此次疫情和2002年SARS疫情的源头&#xff0c;食用野生肉类被认为是非洲埃博拉病毒的一个来源。在冠状病毒爆发后&#xff0c;中国最高立法机构永久性地加强了野…

基于SpringBoot的大学活动平台

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 随着互联网技术的不断…

如何统计12.5米高程覆盖率?

无论是卫星影像还是高程DEM数据&#xff0c;覆盖率都是大家非常关心的一个重要参数。 我们曾基于WGS84坐标进行过简单的覆盖率计算&#xff0c;而且面积还包括了海洋区域。 因此&#xff0c;最后得出了一个非常不靠谱&#xff0c;看起来也很不漂亮的数据&#xff1a;12%。 为…

【算法】对二分搜索的理解

二分搜索大家都很熟悉&#xff0c;首先我们先来看看基本框架 func binarySearch(nums []int, target int) int {left, right : 0, ...for ... {mid : left (right-left)/2if nums[mid] target {...} else if nums[mid] < target {left ...} else if nums[mid] > targ…

快速安装Axure RP Extension for Chrome插件

打开原型文件的html&#xff0c;会跳转到这个页面&#xff0c;怎么破&#xff1f; 我们点开产品设计的原型图如果没有下载Axure插件是打不开&#xff0c;而我们国内网通常又不能再google商店搜索对应插件&#xff0c;下面教大家如何快速安装 1、打开原型文件->resources-&g…

星钻图形输出

答案&#xff1a; #include <stdio.h> int a 0, b 0; void printLine(int a , int b) //输出一行包含&#xff1a;若干个空格 若干个*&#xff0c;第一&#xff0c;二个参数为空格数和*数&#xff1b; (定义一个星钻输出函数) {while (a--) //打印a个空格{printf(…

内衣洗衣机和手洗哪个干净?高性价比内衣洗衣机推荐

通常来说&#xff0c;我们的内衣裤对卫生要求比较高&#xff0c;毕竟是贴身穿的&#xff0c;所以如果和一般的衣物一起洗&#xff0c;就怕会有细菌互相感染。所以很多用户为了内衣裤的卫生都会选择自己手动洗&#xff0c;但手洗一方面很费时间和人力&#xff0c;另一方面又很伤…