毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc

上传人:仙人指路1688 文档编号:3979198 上传时间:2023-03-30 格式:DOC 页数:43 大小:360.50KB
返回 下载 相关 举报
毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc_第1页
第1页 / 共43页
毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc_第2页
第2页 / 共43页
毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc_第3页
第3页 / 共43页
毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc_第4页
第4页 / 共43页
毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于JAVA的学生选课系统设计与实现.doc(43页珍藏版)》请在三一办公上搜索。

1、摘 要随着高校教育改革的不断深入,众多院校采用选课制。作为现代综合教务管理系统的重要组成部分的网上选课系统已成为当务之急。随着大学规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生选课的各种信息量也成倍增加,以前那种人工操作实现学生选课管理的方法已经不符合现阶段的要求。因此迫切需要开发基于互联网的学生选课系统来提高教学管理工作的效率。本文阐述了基于Java的学生选课系统的工作原理和实现方法,分析了学生选课工作的流程,并对系统功能目标和使用的数据库进行了系统的分析和设计,在这些基础上实现了基于Java的网上选课系统。利用Java制作的网上选课系统,实现了选课的动态管理,使得对信息的管理更加

2、及时、高效和安全,并且由于Java适用于任何系统,使得系统的通用性更高。同时本文还对系统的开发原理、系统的功能特点和设计方案进行了介绍。本系统的优势在于操作简单、功能强大、适用性强,面向对象的思想使界面更加人性化。运行系统后证明思路是正确的,技术方案是可行的。 关键词:JavaBean,数据库,窗口,表AbstractWith the development of higher education reform, many universities took the course-selection system, Building up the online course-selection

3、 system,. Building up the online course-selection system, the essential component of web-based comprehensive teaching management system, is more and more emergence. As the expanding on scale the University, and rapid increasing of students, class and specialties, the course-selection information gro

4、wths doubled, The previous method for students choosing course by manual operation didnt meet the requirements at this stage. It is necessary to develop an internet-based MIS to improve the efficiency of management.The principle and method of a Java-based student selection system is described in thi

5、s paper, the course-selection is specified in this thesis. The object and function of the system is also provided. The detailed database design is given, too. Following these, it sketches out the process of the development of the Online Course-Selection System, which based on above specification and

6、 design, and employing the Java-based technology. For the students convenient selecting course, OCSS equipped with a dynamic management component. OCSS provided high performance, information management as quickly as possible, and safety ,or by using Java, system of universal higher. Meanwhile, desig

7、n principle, function, project and security framework of the system had been introduced.The advantages of this system consist in easy operations, strong functions, and strong applicability, Object-oriented thinking made interface more human. After operating system, the technical plan works was be pr

8、oved.Key words: JavaBean, database, windows, tabl目 录1 前言11.1选题背景及意义11.2 学生选课系统的发展和研究现状11.3各章节内容简介22 JAVA语言以及开发工具32.1 java背景知识介绍32.1.1 java的起源32.1.2 java的特点32.1.3 JSP技术简介52.1.4 Java的开发工具63学生选课系统的需求分析113.1学生选课系统功能分析113.2 学生选课系统总体设计:123.3学生选课系统数据库需求分析133.3.1用户登陆:133.3.2学生登陆:143.3.3 教师登陆:143.3.4管理员登陆163

9、.3.5数据库的构建174 学生选课系统的实现214.1学生选课系统程序及注释214.2 系统运行环境254.3学生选课系统运行截图254.3.1登陆页面(起始页)254.3.2学生操作界面264.3.3教师操作界面274.3.4管理员操作界面305 总结与展望36致 谢37参考文献381 前言1.1选题背景及意义随着计算机技术和网络通迅技术的飞速发展,现在国内有很多大学的选课方式由传统的选择方式转变成了网上选课,学生可以在网上选择规定范围内的课程,并且可以在网上查询成绩。无需自己去老师那一门一门查,了解自己已得多少学分还需多少学分,即节省了学生的时间,又便于学校的管理。 因为传统的选课方式都

10、是手工的,教务处通知各班进行选课,各班班长再通知每个同学,经过统计在上交教务处,这样比较浪费时间。再者选课时不知道所选课人数是否已满,要等向教务处上报统计后才会知道,然后才能重新选择。网上选课系统为同学节省了时间的同时,减少了不必要的步骤,也方便管理员管理。 网上选课系统为同学提供了一个自由选择的平台,学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息。本系统也为教师提供了很大的方便,教师可以根据统计的人数挑选一定数量的学生,也可以直接在网上公布成绩,让学生直接在网上查询成绩。 本系统方便了学生的选课,同时便于管理,减少大量的人力资源。并且促进了学生的积极性,近而开发了网上选课

11、系统。1.2 学生选课系统的发展和研究现状 进入21世纪以来,国内各高校都在积极推动教育体制的改革,为培养更为优秀的新世纪复合型人才做出努力。然而在80年代以前,计算机还没有在国内普及各高校学生选课都是手工完成,不仅教师的工作量大,而且学生查询和检索时也很麻烦。80年代后期,少数高校开始实行学年学分制,学生有了一定程度的选课自由。学生在学校只需要修满学分就可以毕业,并且可以根据自己的喜好选择科目。并且随着PC机的普及,有些高校已经开始应用电脑进行日常管理工作。这时,学生选课系统诞生了。但是,这些系统大多是基于DOS或者WINDOWS的单机版本,不仅界面不友好,而且功能薄弱。各科系之间的数据交流

12、只能借助软盘为中介,费时费力。随着高校的规模扩大,教育体制改革的深化,这类系统已经不能适应管理上的要求。90年代后期以来,各高校纷纷建立自己的高速校园网;在技术上,客户机/服务器体系结构已经非常成熟,同时浏览器/服务器体系结构正在兴起,这些都为创建大型的学生选课系统创造了条件,满足了数据集中存放,管理运作分布执行的需求。中心数据库存放学生选课系统的相关数据,管理人员通过网络访问数据库进行业务管理;学生和任课教师可以通过浏览器查询相关数据。目前国内各高校均有自己的选课系统。1.3各章节内容简介本论文在第一章介绍了学生选课系统的研究意义以及研究现状,突出本系统研究的必要性;第二章介绍Java语言和

13、它的开发工具,以说明选择Java的好处;第三章进行学生选课系统的需求分析,以使系统的模块更加清楚;第四章介绍本系统各模块的功能以及结构它们的结构图,以进行下一步的程序编写;第五章学生选课系统主要程序介绍,以使每一步程序的功能清晰的跃然纸上;第六章学生选课系统的前景展望,使系统更加的完美。2 Java语言以及开发工具有了系统制作的必要性接下来是选择开发语言不和工具,由于选择的Java制作,所以本章节将对Java进行介绍以说明选择它进行学生选课系统开发的理由,并介绍几种Java的开发工具。2.1 java背景知识介绍2.1.1 java的起源1991年四月份,Sun的绿色计划(Green Proj

14、ect)开始着手于发展消费性电子产品(Consumer Electronics),所使用的语言是C、C+、及Oak (为Java语 言的前身),后因语言本身和市场的问题,使得消费性电子产品的发展无法达到当初 预期的目标,再加上网络的兴起,绿色计划也因此而改变发展的方向,这已是1994 年了。 而这一次的改变,就是java诞生的契机。而Java 这个名字不是由几个单字的首字所组成, 而是从许多程序设计师钟爱的热腾腾、香浓咖啡中产生灵感的。2.1.2 java的特点Sun是要Java成为一个简单(Simple)、面向对象的(Object Oriented)、 分布式的(Distributed)、解

15、释的(Interpreted)、健壮的(Robust)、安全的(Secure)、 结构中立的(Architecture Neutral)、可移植的(Portable)、高效能的(High Performance)、多线程的(Multithreaded)、动态的(Dynamic)的程序语言。面向对象的思想是Java语言的重要指导思想,最主要的重点是即将要用Java编写的程序,其次才是所需要的工具;最近的即插即用(Plug and Play)亦是面向对象设计的重点。Java与 C/C+最大不同点是Java有一个指针模型(Pointer Model)来排除内存被覆盖(Overwriting Memo

16、ry)和毁损数据(Corrupting Data)的可能性。总的来说java有以下特点:结构中立的(Architecture Neutral):一般而言,网络是由很多不同机型的机器所 组合而成的,CPU和作业系统体系结构均有所不同;因此,如何使一个应用程序可以 在每一种机器上执行,是一个难题。所幸,Java的编译器产生一种结构中立的目标 文件格式(Object File Format);这使得编译码得以在很多种处理器中执行。可移植的(Portable):原始资料型式的大小是被指定的,例如float一直是表示一个32位元IEEE 754浮点运算数字,因绝大多数的CPU都具有此共同特征。程序库属于

17、系统的一部份,它定义了一些可移植的程序接口,Java本身具备有很好的可移植性。解释的(Interpreted):Java解释器能直接地在任何机器上执行Java位元码(Bytecodes),因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,有极大的帮助。高效能的(High Performance):Java位元码迅速地能被转换成机器码(Machine Code), 从位元码转换到机器码的效能几乎与C与C+没有分别。多线程的(Multi threaded):Java语言具有多线程的功能,这对于交互回应能力及 即时执行行为是有帮助的。动态的(Dynamic):Java比C或C+语言更具有动

18、态性,更能适应时刻在变的环境,Java不会因程序库的更新,而必须重新编译程序。正如上文所述,Java是一种成熟的语言又有其它语言所不具有的特点,所以本系统采用Java编程实现。2.1.3 JSP技术简介现在虽然有多种技术可用于生成为动态内容提供服务的 web 应用程序,但真正受 到开发界青睐的是 JavaServer Pages (JSP)。这并非没有充分的理由。JSP 不仅 拥有跨平台和跨 Web 服务器支持,并且将服务器端 Java 技术的功能与静态 HTML 页的“所见即所得”功能有效地结合了起来。作为Java平台的一部分,JSP的脚本语言采用Java,拥有Java编程语言“一次编写,各

19、处运行”的特点,完全继承了Java的所有优点。而且通过开发定制化标示库,JSP技术是可以扩展的,使Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的组件来工作。Java Servlet 简介Java servlet是基于服务器端的编程,可以说Servlet 是基于服务器上的Applet 编程,JSP 技术主要就是用在网络编程上所以也是基于Servlet 的。Java servlets 提供了一项协议和平台无关的方法来创建基于 web 的应用,Servlets 在web 服务器上运行,而且不需要图形用户接口(GUI)这和 applet 不同,在 web 服务器上运行的servle

20、t引擎通过请求和响应来交互信息客户端程序,可以用任意语言编写访问web服务器,同时生成请求,请求然后由web服务器上的 servlet 引擎处理处理完毕后,servlet引擎处理把响应返回给 servlet,然后由 servlets 把响应结果传给客户端。Java Servlets 是运行在请求/面向请求服务器上的模块,比如一个Java-enabled web服务器, 和类似这样的延伸场合。例如,一个Java servlet可以从一个HTML订单表中获取数据,然后用一些商业上的算法来耕新公司相应的订单数据库,也就是说Java servlet 能够象CGI 脚本一样扩展WEB 服务器功能。但是s

21、ervlet 占用很少密集资源,有很多用CGI 脚本编制的一些站点由于访问量剧增,性能迅速下降这是CGI 脚本一个缺点有关。同时由于Java servlet 是用java 编写的,因此是跨平台的,Java Servlet 可以相当有效地替代CGI 脚本, 它可以方便地产生容易编写,而且运行快的动态文本可以很方便的调试寻找出程序问题. Servlet 程序是用Java Servlet API 开发的, astandard Java extension. 但不是Java 核心框架的一部分。2.1.4 Java的开发工具现在常用的Java项目开发环境有:JBuilder、VisualAge for

22、Java、Forte for Java, Visual Cafe、Eclipse、NetBeans IDE、JCreator +J2SDK、jdk+记事本、EditPlus+ J2SDK等等。一般开发J2EE项目时都需要安装各公司的应用服务器(中间件)和相应的开发工具,在使用这些开发工具之前,我们最好能熟知这些软件的优点和缺点,以便根据实际情况选择应用。编程工具只是工具,为了方便人们工作而开发的,各有特点,下面将介绍几种常用的工具:Jbuilder:Jbuilder支持最新的Java技术,包括Applets、JSP/Servlets、JavaBean以及EJB(Enterprise JavaB

23、eans)的应用。用户可以自动地生成基于后端数据库表的EJB Java类,Jbuilder同时还简化了EJB的自动部署功能.此外它还支持CORBA,相应的向导程序有助于用户全面地管理IDL(分布应用程序所必需的接口定义语言Interface Definition Language)和控制远程对象。Jbuilder支持各种应用服务器。Jbuilder与Inprise Application Server紧密集成,同时支持WebLogic Server,支持EJB 1.1和EJB 2.0,可以快速开发J2EE的电子商务应用。Jbuilder能用Servlet和JSP开发和调试动态Web 应用。利用

24、Jbuilder可创建(没有专有代码和标记)纯Java2应用。由于Jbuilder是用纯Java语言编写的,其代码不含任何专属代码和标记,它支持最新的Java标准。Jbuilder拥有专业化的图形调试介面,支持远程调试和多线程调试,调试器支持各种JDK版本,包括J2ME/J2SE/J2EE。JBuilder环境开发程序方便,它是纯的Java 开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,比较吃内存,这时运行速度显得较慢。Eclipse:Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美

25、元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。Eclipse框架的这种灵活性来源于其扩展点。它们是在XML中定义的已知接口,并充当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个Java类的描述。任何Eclipse插件定义的扩展点都能够被

26、其它插件使用,反之,任何Eclipse插件也可以遵从其它插件定义的扩展点。除了解由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。 利用Eclipse,可以将高级设计(也许是采用UML)与低级开发工具(如应用调试器等)结合在一起。如果这些互相补充的独立工具采用Eclipse扩展点彼此连接,那么当我们用调试器逐一检查应用时,UML对话框可以突出显示我们正在关注的器件。事实上,由于Eclipse并不了解开发语言,所以无论Java语言调试器、C/C+调试器还是汇编调试器都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。 Eclipse的最大特点是它能接受由Java开发者自

27、己编写的开放源代码插件,这类似于微软公司的Visual Studio和Sun微系统公司的NetBeans平台。Eclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。Eclipse联盟已经宣布将在2004年中期发布其3.0版软件。这是一款非常受欢迎的java开发工具,这国内的用户越来越多,实际上实用它java开发人员是最多的。缺点就是较复杂,对初学者来说,理解起来比较困难。JCreator:JCreator 是一个Java程序开发工具,也是一个Java集成开发环境(IDE)。无论你是要开发Java应用程序或者网页上的Applet元件都难不倒它。在功能上与Sun公司所公布

28、的JDK等文字模式开发工具相较之下来得容易,还允许使用者自订义操作窗口界面及无限Undo/Redo等功能。JCreator为用户提供了相当强大的功能,例如项目管理功能,项目模板功能,可个性化设置语法高亮属性、行数、类浏览器、标签文档、多功能编绎器,向导功能以及完全可自定义的用户界面。通过JCreator,我们不用激活主文档而直接编绎或运行我们的JAVA程序。JCreator能自动找到包含主函数的文件或包含Applet的Html文件,然后它会运行适当的工具。在JCreator中,我们可以通过一个批处理同时编绎多个项目。JCreator的设计接近Windows界面风格,用户对它的界面比较熟悉。其最

29、大特点是与我们机器中所装的JDK完美结合,是其它任何一款IDE所不能比拟的。它是一种初学者很容易上手的java开发工具,缺点是只能进行简单的程序开发,不能进行企业J2EE的开发应用。IntelliJ:Intellij IDEA是一款综合的Java 编程环境,被许多开发人员和行业专家誉为市场上最好的IDE。它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持J2EE,Ant,JUnit和CVS集成,非平行的编码检查和创新的GUI设计器。IDEA把Java开发人员从一些耗时的常规工作中解放出来,显著地提高了开发效率。具有运行更快速,生成更好的代码;持续的重新设计和日常编码变得更加简易,与

30、其它工具的完美集成;很高的性价比等特点。在4.0版本中支持Generics,BEA WebLogic集成,改良的CVS集成以及GUI设计器。IntelliJ IDEA能尽可能地促进程序员的编程速度。它包括了很多辅助的功能,并且与Java结合得相当好。不同的工具窗口围绕在主编程窗口周围,当鼠标点到时即可打开,无用时也可轻松关闭,使用户得到了最大化的有效屏幕范围。以技术为导向的IDEA集成了调试器,支持本地和远程的调试,即使我们需要修改一些设置上的东西使我们的工作顺利进展。另外,它还提供了通常的监视,分步调试以及手动设置断点功能,在这种断点模式下,我们可以自动地在断点之外设置现场访问,甚至可以浏览

31、不同的变量的值。IDE支持多重的JVM设置,几个编译程序和Ant建造系统,并且,它使得设置多重的自定义的类途径变得简单。IntelliJ Idea是一个相对较新的Java IDE。它是Java开发环境中最为有用的一个。高度优化的IntelleJ Idea使普通任务变得相当容易,Idea支持很多整合功能,更重要的使它们设计的好容易使用。Idea支持XML中的代码实现,Idea同时还会校正XML,Idea支持JSP的结构。作用于普通Java代码的众多功能同样适用于JSP(比如整合功能),同时支持JSP调试;支持EJB,尽管它不包括对个别应用服务器的特殊支持。Idea支持Ant建立工具,不仅是运行目

32、标它还支持编译与运行程序前后运行目标,另外也支持绑定键盘快捷键。在编辑一个Ant建立XML文件时,Idea还对组成Ant工程的XML部分提供支持。IntelliJ IDEA 被称为是最好的JAVA IDE开发平台,这套软件就是以其聪明的即时分析和方便的 refactoring 功能深获大家所喜爱。缺点是较复杂,对初学者来说,理解起来比较困难。 当然,Java远不止这几个工具,但是其它的不是老化以不再使用,就是应用上不方便所以在此只介绍这几种工具。本章小结 本章节通过对Java的介绍以及它的编写工具的简介,论述了选择Java的理由,阐明了选择Java的好处为下个章节对系统程序结构做了铺垫。3学生

33、选课系统的需求分析在选择了开发工具后将对系统进行需求分析,以确保程序的结构清晰明朗,所以本章节将对学生选课系统的功能和结构进行分析,最后列出主要类表。3.1学生选课系统功能分析本在线选课系统功能比较多,除了最基本的选课功能外,教师也具有开课功能,同时后台的管理员还能对教师和个人信息进行维护。选课系统的核心是选课功能。学生在选课以前,必须通过系统的身份验证,让后就可以选定自己的选修课程。当然,学生也能删除选错或者误选的课程。另外,选课系统还提供了课程查看的功能。选课系统还提供了一个后台管理功能。管理员通过身份验证以后,可以查看和修改学生的个人信息,也可以添加或删除学生。另外,管理员也可以查看和修

34、改教师的个人信息,以及添加或删除教师。3.2 学生选课系统总体设计:图3-1 学生选课系统总体结构图本系统采用Servlet+Jsp+JavaBean+SQL2000 设计方式,其中Servlet担当主要逻辑控制,通过接受Jsp传来的用户请求,调用以及初始化JavaBean,在通过Jsp传到客户端,本系统中SqlBean担当主要的与数据库的连接与通信,JavaBean在本系统中主要担当配合Jsp以及Servlet来完成用户的请求,而Jsp主要担当接受与响应客户端。3.3学生选课系统数据库需求分析通过对学生选课系统工作内容和相关数据流程分析,根据学生选课系统的需要,以及系统功能设计的要求以及功能

35、模块的划分,就可以设计出满足用户需求的各种实体。该系统由登陆模块,学生模块,教师模块,管理员模块,四部分组成。其功能如下:3.3.1用户登陆:图3-2 学生选课系统登陆流程图 登陆模块包括欢迎信息、日历、用户类型选择、及用户名密码输入框,当用户为输入用户名或密码登陆或出错时系统会报错!3.3.2学生登陆:图3-3 学生选课系统学生登陆流程图学生登陆以后,可以选报课程。系统会根据学生所在系及课程的预修课判断(课程有系别,预修课等属性)。首先,系统会列出所有满足该生系别以及该生还未选报的课程,或者其预修课为“public”的课程。如果该生选报了未满足预修课要求的课程,系统会有相关的错误提示。 其次

36、,学生可以查看自己的成绩,包括该生已选课程的名称,学分以及 该生的总分。如果教师还未给出成绩,则系统会有相关提示。再次,该生可以更改自己的个人信息,包括密码,电话号码等,其中要求密码不能为空。3.3.3 教师登陆:教师在本系统中拥有是否接受学生所选课程,以及给学生打分的权力,只有先接受学生,才能给该生打分。 首先, 系统要求教师选择学生,然后系统会列出该教师所代课程的班级, 其次系统会列出选报了该课程的所有学生(其中包括了该生的一些详细情况),在教师选择了接受以后,就可以给该生的这门课打分,在这之后系统会分析教师的输入是否正确(即是否为阿拉伯数字),否则会有提示。 其次,在教师给出了学生成绩之

37、后,系统会根据成绩来判断该生是否通过了考试,如果该成绩大于或等于60,则在该生的学分上加上该课程的学分。具体流程如图3-4所示:图3-4 学生选课系统教师登陆流程图3.3.4管理员登陆图3-5 学生选课系统管理员登陆流程图管理员在本系统中有着最高的权力,包括新增,更改,删除学生,教师,课程以及班级。 其中“班级” 是本系统中关键的环节,同样也是数据库中的关键。 它直接与课程,教师,上课时间,地点联系,学生所选的课程也要具体到某一个班级,所以首先班级号不能为空,其次要保证同一教师在同一时间不能上两门课程。 在新增“课程”时,要求决定课程所在系以及其预修课(系统会动态列出现有的课程),其中课程所在

38、系必须与预修课所在系一致(或者选择无预修课,再或者预修课属性为(public),否则系统会有错误提示。除此之外,在更改或新增时,名称,ID或者密码不可为空,否则系统会有相关提示。具体流程如图3-5所示。3.3.5数据库的构建(1)数据库模块分析图3-6 学生选课系统数据库关系图再加上它们之间的关系图3-6所示,由此得到数据库所支持的数据模型,具体如下:对于学生选课系统数据库,可以列出以下数据项和数据结构:学生信息:学号、学生姓名、学生的系号、学生性别、学生生日、学生密码。对于教师信息维护数据库,可以列出以下数据项和数据结构:教师个人信息:教师编号、教师名称、教师所在系号、教师职称、教师密码。对

39、于后台管理数据库,可以列出以下数据项和数据结构:管理员信息:管理员名称、管理员密码。辅助数据库:课程信息:课程号、课程名称、课程类别、课程学分、课程容量。选课信息:课程号、学生学号、成绩、课程类别、编号。班级信息表:班级号、班级名(2) 数据库的结构设计 根据数据库的需求分析,建立5个数据表分别结构如下:班级信息表,下面给出它的类表如表3-1所示。表3-1 班级信息表关键词类长度班级名char10班级号char10学生信息表,下面给出它的类表如表3-2所示。 表3-2 学生信息表关键词类长度学号char9学生姓名char8学生班级号char20学生性别char2学生生日char8学生密码cha

40、r20教师信息表,下面给出结构如表3-3所示。 表3-3教师信息表关键词类长度教师编号char9教师姓名char8教师职称char6教师密码char20课程信息表,下面给出它的类表如表3-4所示。 表3-4 课程信息表关键词类长度教师编号char9学生学号char10课程名称char20课程类别char8课程容量int4选课信息表,下面给出它的类表如表3-5所示。 表3-5 选课信息表关键词类长度课程名称char10学生学号char9成绩char9课程类别char8课程标识int4本章小结在本章节,主要论述了学生选课系统主要模块的构建,并通过图示的方法解决了各模块构建时结构不清晰的难题。然后建

41、立了各模块的信息类表,为编程实现做了最后的准备。4 学生选课系统的实现在系统的功能和结构分析完后,程序可以进行编写,本章节将对程序进行介绍,然后介绍了系统的运行环境,最后展示了程序完成后的界面截图。4.1学生选课系统程序及注释由于本系统程序繁多,故只将程序的主要部分做了介绍,以下是数据库操作文件sqlBean.java内容及注释:package manage;/所在包名import java.io.*;/用到输入输出流方法import java.sql.*;/用到数据库支持方法public class sqlBean/主类名public Connection conn=null;public

42、ResultSet rs=null;private String DatabaseDriver=sun.jdbc.odbc.JdbcOdbcDriver;/设置数据库驱动器/DataSource 数据源名称DSNprivate String DatabaseConnStr=jdbc:odbc:ClassDB,limq,123;/配置数据源为ClassDB/*setXxx用于设置属性值;getXxx用于得到属性值*/数据库用户名limq public void setDatabaseDriver(String Driver)/密码:123this.DatabaseDriver=Driver;pu

43、blic String getDatabaseDriver()return (this.DatabaseDriver);public void setDatabaseConnStr(String ConnStr)this.DatabaseConnStr=ConnStr;public String getDatabaseConnStr()return (this.DatabaseConnStr);public sqlBean()/构造方法tryClass.forName(DatabaseDriver);catch(java.lang.ClassNotFoundException e)System

44、.err.println(加载驱动器有错误:+e.getMessage( );System.out.print(执行插入有错误:+e.getMessage();/输出到客户端public int executeInsert(String sql)/执行插入操作的方法体,其中sql字符串传递SQL语句。int num=0;tryconn = DriverManager.getConnection(jdbc:odbc:ClassDB,limq,123);Statement stmt=conn.createStatement( );num=stmt.executeUpdate(sql);catch(

45、SQLException ex)System.err.println(执行插入有错误:+ex.getMessage() );System.out.print(执行插入有错误:+ex.getMessage();/输出到客户端CloseDataBase();return num;public ResultSet executeQuery(String sql)/执行查询的方法体rs=null;tryconn = DriverManager.getConnection(jdbc:odbc:ClassDB,limq,123);Statement stmt=conn.createStatement( )

46、;rs=stmt.executeQuery(sql);catch(SQLException ex)System.err.println(执行查询有错误:+ex.getMessage() );System.out.print(执行查询有错误:+ex.getMessage(); /输出到客户端return rs;public int executeDelete(String sql)/执行删除的方法体int num=0;tryconn = DriverManager.getConnection(jdbc:odbc:ClassDB,limq,123);Statement stmt=conn.createStatement( );num=stmt.executeUpdate(sql);catch(SQLException ex)System.err.println(执行删除有错误:+ex.getMessage() );System.out.print(执行删除有错误:+ex.getMessage(); /输出到客户端CloseDataBase();return num;public void CloseDataBase()/关闭数据库的方法体tryconn.close();catch(E

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号