java swing毕业设计题目管理系统eclipse开发Mysql数据库CS结构java编程

news2024/11/25 5:03:14

一、源码特点
    java swing毕业设计题目管理系统 是一套完善的窗体设计系统,对理解SWING java 编程开发语言有帮助,系统具有完整的源代码和数据库,,系统主要采用C/S模式开发。
应用技术:java+mysql
开发工具:eclipse、jdk。

java swing 毕业设计项目管理系统1


二、功能介绍
毕业设计题目管理系统要满足以下几个方面的功能需求:
(1)管理员管理:对管理员信息进行添加、删除、修改和查看
(2)教师管理:对教师信息进行添加、删除、修改和查看
(3)学生管理:对学生信息进行添加、删除、修改和查看
(4)题目管理:对题目信息进行添加、删除、修改和查看
(5)选题管理:对选题信息进行添加、删除、修改和查看
(6)设置管理:对设置信息进行添加、删除、修改和查看
(6)密码修改、退出系统、登录
(7)个人信息修改

数据库设计

CREATE TABLE `gly` (
`glyid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',  PRIMARY KEY  (`glyid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `jiaoshi` (
`jsid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',
`lxdh` VARCHAR(40) default NULL COMMENT '联系电话',
`lxdz` VARCHAR(40) default NULL COMMENT '联系地址',  PRIMARY KEY  (`jsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `xuesheng` (
`xsid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',
`lxdh` VARCHAR(40) default NULL COMMENT '联系电话',
`lxdz` VARCHAR(40) default NULL COMMENT '联系地址',  PRIMARY KEY  (`xsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `timu` (
`tmid` int(11) NOT NULL auto_increment,
`tmmc` VARCHAR(40) default NULL COMMENT '题目名称',
`js` VARCHAR(40) default NULL COMMENT '介绍',
`jsyq` VARCHAR(40) default NULL COMMENT '技术要求',
`cgyq` VARCHAR(40) default NULL COMMENT '成果要求',
`yh` VARCHAR(40) default NULL COMMENT '教师',
`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`tmid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `xuanti` (
`xtid` int(11) NOT NULL auto_increment,
`tm` VARCHAR(40) default NULL COMMENT '题目',
`xs` VARCHAR(40) default NULL COMMENT '学生',
`sj` VARCHAR(40) default NULL COMMENT '时间',  PRIMARY KEY  (`xtid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `shezhi` (
`szid` int(11) NOT NULL auto_increment,
`tms` VARCHAR(40) default NULL COMMENT '题目数',
`xts` VARCHAR(40) default NULL COMMENT '选题数',  PRIMARY KEY  (`szid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;


代码设计

/***隐藏*/
			jButton5.setVisible(false);
			xtid.setVisible(false);

/*jTable1.setModel(new javax.swing.table.DefaultTableModel(
				new Object[][] { { null, null, null, null },
						{ null, null, null, null }, { null, null, null, null },
						{ null, null, null, null } }, new String[] { "Title 1",
						"Title 2", "Title 3", "Title 4" }));*/
		jScrollPane1.setViewportView(jTable1);
		this.Action();



-------基础放方法----直接复制-----

	public void Action() {
	/**查询所有选题信息的方法**/
		String[] headtitle = { "选题编号","题目","学生","时间" };//选题表格的标题
		Object[][] tabledata = null;
		String sql = "select * from xuanti order by xtid";//要查询的选题的sql语句
		DBO db = new DBO();
		ResultSet rs = null;
		try {
			int i = 0;
			rs = db.query(sql);//执行查询方法
			while (rs.next()) {
				i++;
			}
			tabledata = new Object[i][15];
			rs = db.query(sql);
			int m = 0;
			rs = db.query(sql);
			//把查询结构放到二维数组
			while (rs.next()) {
				tabledata[m][0] = rs.getString("xtid");//选题编号信息
tabledata[m][1] = rs.getString("tm");//题目信息
tabledata[m][2] = rs.getString("xs");//学生信息
tabledata[m][3] = rs.getString("sj");//时间信息

				
				m++;
			}
			jTable1.setModel(new javax.swing.table.DefaultTableModel(tabledata,
					headtitle));
			this.jTable1.getTableHeader().setPreferredSize(
					new Dimension(this.jTable1.getTableHeader()
							.getPreferredSize().width, 20));
			jTable1.setSelectionBackground(Color.GREEN);
			//表格居中
			DefaultTableCellRenderer tcr = new DefaultTableCellRenderer();// 设置table内容居中
			// tcr.setHorizontalAlignment(JLabel.CENTER);
			tcr.setHorizontalAlignment(SwingConstants.CENTER);// 这句和上句作用一样
			jTable1.setDefaultRenderer(Object.class, tcr);
			jButton4.setVisible(false);
			jButton5.setVisible(false);
			hideColumn(jTable1,0);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if (db != null) {
				db.close();
			}
		}
		resetForm();
	}
	public void  resetForm(){
		//把控件信息清空
		this.xtid.setText("");//选题编号信息赋值成空
this.tm.setText("");//题目信息赋值成空
this.xs.setText("");//学生信息赋值成空
this.sj.setText("");//时间信息赋值成空

		
	}


-------修改方法-------------
	/**选题信息修改的方法**/
		String txttm = this.tm.getText();// 题目
String txtxs = this.xs.getText();// 学生
String txtsj = this.sj.getText();// 时间

		String txtxtid=this.xtid.getText();//
		String sql = "";//
			if (txttm == null || txttm.equals("")) {
 JOptionPane.showMessageDialog(null, "题目不能为空!", "警告",
	JOptionPane.WARNING_MESSAGE);
return;
}
	if (txtxs == null || txtxs.equals("")) {
 JOptionPane.showMessageDialog(null, "学生不能为空!", "警告",
	JOptionPane.WARNING_MESSAGE);
return;
}
	if (txtsj == null || txtsj.equals("")) {
 JOptionPane.showMessageDialog(null, "时间不能为空!", "警告",
	JOptionPane.WARNING_MESSAGE);
return;
}

		if (txtxtid == null || txtxtid.equals("")) {
			JOptionPane.showMessageDialog(null, "请选择要修改的选题信息!", "警告",
					JOptionPane.WARNING_MESSAGE);
			return;

		}
		sql = "update xuanti set  tm='"+txttm+"',xs='"+txtxs+"',sj='"+txtsj+"' where xtid ='"+txtxtid"'";//选题信息update语句
		try {
			DBO db = new DBO();//初始化对象
			db.open();//打开数据库链接
			db.update(sql);//执行sql语句
			db.close();//关闭数据库链接
			JOptionPane.showMessageDialog(null, "修改选题成功!", "警告",
					JOptionPane.WARNING_MESSAGE);
			this.Action();//修改完,刷新选题信息表格方法
			jButton5.setVisible(false);//隐藏 修改按钮
			// this.dispose();
		} catch (Exception e) {
			e.printStackTrace();

		}


三、注意事项
     1、管理员账号:admin密码:admin 数据库配置文件DBO.java
    2、开发环境为Myeclipse8.5开发,数据库为mysql,使用java语言开发。
    3、数据库文件名是javabytm.sql ,系统名称bytm

四系统实现

代码下载

https://download.csdn.net/download/qq_41221322/89093476

需要源码 其他的定制服务  下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

杨笛一新作:社恐有救了,AI大模型一对一陪聊,帮i人变成e人

ChatGPT狂飙160天,世界已经不是之前的样子。 新建了免费的人工智能中文站https://ai.weoknow.com 新建了收费的人工智能中文站ai人工智能工具 更多资源欢迎关注 在社交活动中,大语言模型既可以是你的合作伙伴(partner)&#xff0…

SSL证书价格为什么差异如此大?

SSL证书市场品牌和种类众多,用户在选择证书的时候,也能随心所欲的购买到心仪的证书品牌类型。但是也有不少用户在选购的时候,也不禁有疑问:不同的证书品牌和类型为什么价格相差如此之大?确实,有的证书很便宜…

重磅来袭!2024CWE北京门窗幕墙展

CWE中国(北京)国际系统门窗及幕墙博览会 CWE China(Beijing)International System Doors Windows and Curtain Walls Expo 2024 年 8 月 29-31 日 北京,中国国际展览中心顺义馆 展会概况: 2024年CWE中国…

低代码开发平台推荐:国内超好用的十款实测评测

随着互联网技术的飞速发展,低代码平台逐渐成为企业数字化转型的利器。这类平台简化了开发过程,让非专业开发者也能参与到应用构建中来。本文将为您盘点国内十大低代码平台有:Zoho creator、,帮助您更好地选择适合自己企业的低代码…

【目标检测】-入门知识

1、回归与分类问题 回归问题是指给定输入变量(特征)和一个连续的输出变量(标签),建立一个函数来预测输出变量的值。换句话说,回归问题的目标是预测一个连续的输出值,例如预测房价、股票价格、销售额等。回归问题通常使用回归分析技术,例如线性回归、多项式回归、决策树…

Win10系统下的EDGE浏览器启用IE模式

Win10系统下的EDGE浏览器目前已弃用IE内核,这样在访问某些较老的网站会有兼容性问题,本文记录了在EDGE浏览器中启用IE模式的操作方法。 一、启用EDGE浏览器的IE模式 要打开Internet Explorer模式,执行以下步骤: 1、在Microsoft Edge的地址栏…

同城O2O:开发外卖跑腿小程序的技术探索

当下,开发一款功能完善、用户体验良好的外卖跑腿小程序成为了很多互联网企业的首要任务。今天小编将从技术角度对开发外卖跑腿小程序进行探索,为开发者提供一些技术上的思路和方法。 1.技术选型 在开发外卖跑腿小程序时,选择合适的技术栈至关…

Docker使用— Docker部署安装Nginx

Nginx简介 Nginx 是一款高性能的 web 服务器、反向代理服务器以及电子邮件(IMAP/POP3/SMTP)代理服务器,由俄罗斯开发者伊戈尔塞索耶夫(Igor Sysoev)编写,并在2004年10月4日发布了首个公开版本0.1.0。Nginx…

C++--运算符重载

运算符重载 在类中重新定义运算符,赋予运算符新的功能以适应类的运算,就称为运算符重载。 运算符重载是一种形式的C多态,它使得对象操作更直观,本质上也是属于函数重载。 实际上,我们已经在不知不觉之中使用了运算符重载。例如,加…

Facebook直播延迟过高是为什么?

在进行Facebook直播 时,高延迟可能会成为一个显著的问题,影响观众的观看体验和互动效果。以下是一些导致Facebook直播延迟过高的可能原因: 1、网络连接问题 网络连接不稳定或带宽不足可能是导致Facebook直播延迟的主要原因之一。如果您的网络…

Jackson 各种注解使用示例

参考资料 Jackson使い方メモ 目录 一. JsonIgnore二. JsonIgnoreProperties三. JsonProperty3.1 作用于entity属性上,指定json对象属性名3.2 作用于entity方法上,指定json对象属性名 四. JsonFormat4.1 日期格式化4.2 数字格式化4.3 枚举类返回code 五.…

限流的实现方式

1、tomcat 设置最大链接数 2、Nginx 漏桶算法 3、网关,令牌桶算法

Linux使用宝塔面板安装MySQL结合内网穿透实现公网连接本地数据库

文章目录 推荐前言1.Mysql服务安装2.创建数据库3.安装cpolar3.2 创建HTTP隧道 4.远程连接5.固定TCP地址5.1 保留一个固定的公网TCP端口地址5.2 配置固定公网TCP端口地址 推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不…

运筹学基础(六)列生成算法(Column generation)

文章目录 前言从Cutting stock problem说起常规建模Column generation reformulation 列生成法核心思想相关概念Master Problem (MP)Linear Master Problem (LMP)Restricted Linear Master Problem (RLMP)subproblem(核能预警,非常重要) 算法…

Yalmip使用教程(7)-求解器的参数设置

博客中所有内容均来源于自己学习过程中积累的经验以及对yalmip官方文档的翻译:https://yalmip.github.io/tutorials/ 这篇博客将详细介绍yalmip工具箱中常用的求解器设置选项。 1.求解器的基本设置 使用sdpsettings函数可以对求解的相关参数进行设置。最常用的设置…

SpringBoot学习笔记-S2

1. SpringBoot中的常见注解 RequestBody:使SpringMVC框架可自动读取请求体里面的JSON格式的数据,转换成map类型的集合对象RestController:开发RESTful API 时使用,等价于ResponseBody Controller。RestController和Controller的…

ctfshow web入门 文件上传web162--web167

web162 session文件包含条件竞争 直接包含不传马了 我们上传的文件如果不符合要求,就会被删除,导致成功上传无法访问,没有用。但是如果我们上传的速度比服务器删的速度快,就可以了。 上传.user.ini GIF89a auto_append_file/tmp/…

MySQL-7.mysql约束

约束用于确保数据库中的数据满足特定的商业规则。 MySQL约束包含五种:not null、unique、primary key、foreign key、check 7.1 primary key 主键 字段名 字段类型 primary key 用于唯一的标识表的行数据,当定义主键约束后,该列不能重复。 pr…

HarmonyOS实战开发-短时任务

介绍 本示例主要展示后台任务中的短时任务。 通过ohos.resourceschedule.backgroundTaskManager ,ohos.app.ability.quickFixManager 等接口实现应用热更新的方式去展现短时任务机制。 效果预览 使用说明 1.安装本应用之前,先编译好未签名的应用包&a…

Springboot 测试模块 + 注入bean失败

1.添加依赖 <dependencies><!-- ... 其他依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency> </depende…