标签:结合 系统 前途 源码 面向对象 理论 java语言 程序 增加
Java课程设计
(综合项目文档)
医生管理系统
院 别: 信息科学与工程学院
专 业: 计算机科学与技术
班 级: 2018级计科2班
学生姓名: 张宇 张桐 杨伟红
指导老师: 董保莲
二〇二〇年七月
目 录
1 绪论 1
1.1 项目概述 1
1.2 项目意义 1
2 开发工具和相关技术简介 2
2.1 Eclipse简介(或者MyEclipse或者IEDA简介) 2
2.2 Java语言介绍 2
2.3 MySQL简介 2
2.4 JDBC技术简介 3
3 系统需求分析 4
3.1 系统可行性分析 4
3.2 系统需求分析 4
3.3 组内成员分工 4
3.4 项目进度安排 5
4 系统设计 6
4.1 系统设计 6
4.2 数据库设计 6
5 系统实现 8
5.1 管理员登录界面实现 8
5.2 管理用户信息界面实现 8
6 系统测试 10
7 结论和心得 11
1.1 项目概述
医院管理系统:第一个界面登陆,登陆成功之后跳转到选择科室界面,通过选择不同的科室,对不同科室的医生信息进行增查删。来管理医院医生信息。
1.2 项目意义
通过登陆管理系统,实现增查删各个科室的医生信息情况,从而得到一个能对医生信息更好操作的一个系统。
本项目是项目名。开发环境:******、MySQL;开发语言:Java语言;开发技术:JDBC等。本章将对开发工具和相关技术进行简单介绍。
Eclipse是一个基于Java的、开放源码的、可扩展的应用开发平台,它为编程人员提供了一流的Java集成开发环境(Integrated Development Environment,IDE)。在Eclipse的官方网站中提供了一个Java EE版的Eclipse IDE。应用Eclipse IDE for Java EE,既可以创建Java项目,也可以创建动态Web项目。
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
Java是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。
Java的优点:
(1)可移植性比较高
(2)Java可以很容易构建防病毒,防篡改的系统。
(3)能够面向对象
(4)比C++更加简化
(5)高性能
Java语言特性:
应当使用面向对象程序设计方法学
应当允许同一程序在不同的计算机平台执行
应当包括内建的对计算机网络的支持
应当被设计成安全地执行远端代码
应当易于使用,并借鉴以前那些面向对象语言(如C++)的长处。
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购.对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL的官方网站的网址是:www.mysql.com
JDBC是一种可用于执行SQL语句的JavaAPI它由一些Java语言编写的类和界面组成。JDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。
技术可行性:
实现一个简单的医院管理系统,读取数据库里的信息显示在界面上,实现增删查改功能,用强大的Java,以及ecilpse开发环境,还有MySQL数据库的使用,开发人员懂Java语言的开发以及GUI的设计与使用还有MySQL数据库的使用与操作,有良好的开发环境,以及不懂的可以在百度上搜索,所以在技术上是可行的。
操作可行性:项目是生活中常见的,医院管理系统操作简单,开发人员有电脑,有网络,有开发环境,会学习,会操作开发环境以及安装数据库并且连接数据库会使用码云(git)来实现代码的同步性,会编写java程序,有时间,组内成员都积极参与,所以在操作上可行。
医生管理系统
需求分析:注册、登陆,对医生信息增、删、查
登录:用户名、密码
医生信息:医生编号、姓名、性别、科室、出生日期、电话。
可以输入医生编号,查看该医生的信息(在数据库中找)
可以输入医生编号,删除该医生的信息(数据库中也删除)
表3-1 组内成员分工情况表
序号 |
姓名 |
组内角色 |
小组分工 |
备注 |
18111225 |
张宇 |
组长 |
实现骨科以及妇产科代码实现及整合代码,并且注册码云,管理项目进度,管理小组成员 |
Mysql数据库是一起做的一起连接的 |
18111226 |
张桐 |
组员 |
实现科室里医生信息的增删查 |
Mysql数据库是一起做的一起连接的 |
18111221 |
杨伟红 |
组员 |
实现登录界面、选择科室界面、从数据库读数据到运行界面显示 |
Mysql数据库是一起做的一起连接的 |
|
|
|
|
|
进度安排如表3-2所示。
表3-2 进度安排表
阶段 |
持续时间 |
阶段描述 |
输出 |
构思阶段 |
1天 |
需求分析 |
需求说明,功能模块图 |
设计阶段 |
1天 |
系统设计 |
设计说明-可以画流程图;数据库设计 |
实现阶段 |
4天 |
编写代码 |
项目工程源代码 |
1天 |
系统测试 |
进行黑盒测试(功能测试)-测试说明 |
|
运行阶段 |
4小时 |
部署、运行 |
系统使用说明、运维报告-答辩 |
根据系统的实际功能需求分析,对系统功能部分进行了设计。
登录界面实现设计:
在程序里设置好固定的密码和用户名,然后键盘输入用户名和密码,他们就会进行比较,如果正确就进入下一个界面,如果不正确就会提示用户密码或者是用户名不正确。
医生管理系统界面实现设计:
医生管理系统界面可以进行选择并进入不同科室
相应科室界面实现设计:
在进入科室后,科室会显示相应科室里医生的信息,并且显示在窗口上,然后有增删查功能模块,进入相应的功能模块就会有相应的操作:点击增模块就会有另一个界面,来让你填写医生信息;点击删模块输入医生编号后就会删除数据库里面的数据,点击查模块输入医生编号后,就会查找到医生的信息;整个项目是连接数据库的。
数据库设计:
数据库设计有编号、姓名、年龄、性别、科室、出生日期、电话号码。
根据系统需求分析设计了一张表,为医生信息管理表。具体信息如表4-1所示。
表4-1 医生信息表
序号 |
字段名 |
数据类型 |
约束 |
是否为空 |
说明 |
1 |
sNo |
int(6) |
主键 |
否 |
医生编号 |
2 |
sName |
Varchar(20) |
|
否 |
医生姓名 |
3 |
age |
Int(3) |
|
否 |
医生年龄 |
4 |
gender |
Char(2) |
|
否 |
医生性别 |
5 |
section |
Varchar(20) |
|
否 |
医生科室 |
6 |
birth |
Date(0) |
|
否 |
医生生日 |
7 |
telephone |
Char(11) |
|
否 |
医生电话 |
管理员通过输入账号密码来进行登录后台管理系统。登录界面如图5-9所示。
图5-1 管理员登录界面
管理员通过选择不同的科室对医生进行管理
图5-2 科室界面
科室界面显示该科室的医生信息,并且会按编号进行排序,可以对医生进行增加、删除、查找操作。
图5-3 皮肤科界面
图5-4 骨科界面
图5-5 妇产科界面
图5-6 删除界面
图5-7 增加界面
图5-8 查找界面
点击返回科室按钮,可以更新信息
图5-9 更新信息
在医生管理系统中主要对登陆、划分科室,对医生信息的修改,数据的保存进行测试,测试结果如表6-1所示。
表6-1 医生管理系统测试表
编号 |
测试功能 |
输入描述 |
预期结果 |
运行结果 |
01 |
登陆、划分科室 |
1.运行程序,输入正确的用户名和密码 2.点击不同的科室 |
可以登陆,可以按科室显示医生信息,并且按编号排序 |
正常,与预期结果一致 |
02 |
对医生信息的修改 |
|
可以实现增加、删除、查找功能 |
正常,与预期结果一致 |
03 |
数据的保存 |
|
数据库中的数据可以根据不同的操作,进行修改 |
正常,与预期结果一致 |
医生管理系统主要是针对用户的操作,从测试结果中可以看出该模块的所有功能均能正常实现,且测试结果与预期结果一致。
学生1姓名:张宇
心得:通过这次综合项目了解到了什么是java的面向对象思想,也复习了以前学习过的知识,使我的基础知识更加牢固,对GUI图形界面的使用更加得心应手,学习了更多新的知识,知道了数据库的使用,可以用Eclipse对数据库中的数据进行修改,也学会了使用Git ,实现了多人代码的编写,而且在程序的实现过程中遇到了很多问题,有的是不细心,有的是学的新知识不会用,有的是软件没安装好,导致了很长的时间一直停留在原地,最后通过上网查、问同学才知道怎么解决问题,还有通过这次综合项目加深了我对需求分析的理解,在进行任何一个项目时首先要做的不是写代码,而是要先分析要实现什么功能,然后要知道用什么知识来实现,并且要统一数据的格式、类型,这样可以让你思路明确,知道下一步该干什么,可以提高写程序的效率。
学生2姓名:张桐
心得:虽然过程辛苦是不可避免,但收获还是令人感到尤其的欣慰。在这次的课程设计中不仅检验了我所学习的知识,也培养了我的实践能力,让我知道遇到一个问题,如何去寻找思路,如何去解决问题,最终完成整个事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专 业课程知识综合应用的实践训练,是我们迈向社会,从事职业工作前一个必不少的过程。实验过程中,也十分感谢实验指导老师董老师的指点与教导。这次课程设计不仅是对这学期所学知识的一种综合检验,而且也是对自己动手能力的一种提高,增强了自己实践能力。通过这次课程设计使我明白了自己知识还比较欠缺,只是学习书本知识还是远远不够的,自己不会的东西还有太多,学习需要自己长期的积累,在以后的学习、工作中都应该不断的学习,将课本的理论知识与生活中的实践知识相结合,不断提高自己文化知识和实践能力。
学生3姓名:杨伟红
心得:通过本次课程设计我学到了学习是没有止境的,只有不断的复习、不断的学习充实自己,才能成就更优秀的自己。原本我以为我已经学过了c语言以及java语言,并且自认为自己学得不错,但是进行了这次课程设计,我发现我错了,本次课程设计有很多地方我不懂,又或者是忘记了很多java基础,我发现如果只是学习一遍,就想很轻而易举的使用好java语言是几乎不可能的事情,在课程设计中我通过不断的重新学习,我又学习到很多新内容,这让我知道了温故知新的重要性;并且在课程设计里我发现学习是没有边缘的,在本次课程设计是我接触到了新内容gui图形界面的设计,我发现这是一个很有趣的东西,我可以自定义界面,并且可以把界面背景更换,这是非常有乐趣的东西,还认识到数据库的强大,虽然我还是不太懂gui以及数据库,但是我知道学习是没有止境的,我会不断的去学习的。
标签:结合 系统 前途 源码 面向对象 理论 java语言 程序 增加
原文地址:https://www.cnblogs.com/fate666/p/13227798.html