《毕业设计选题系统设计与实现》论文.docx
《《毕业设计选题系统设计与实现》论文.docx》由会员分享,可在线阅读,更多相关《《毕业设计选题系统设计与实现》论文.docx(26页珍藏版)》请在冰豆网上搜索。
![《毕业设计选题系统设计与实现》论文.docx](https://file1.bdocx.com/fileroot1/2022-12/30/1484bc1e-23e5-4676-bb23-86cc654cc69c/1484bc1e-23e5-4676-bb23-86cc654cc69c1.gif)
《毕业设计选题系统设计与实现》论文
中南民族大学
毕业论文(设计)
学院:
计算机科学学院
专业:
计算机科学与技术年级:
2010
题目:
毕业设计选题系统设计与实现
学生姓名:
学号:
指导教师姓名:
刘赛职称:
副教授
2014年5月
中南民族大学本科毕业论文(设计)原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果.除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
本人完全意识到本声明的法律后果由本人承担.
作者签名:
年月日
1.3Mysql简介。
。
。
。
.。
.。
.。
。
。
。
。
。
。
。
。
。
。
。
.。
...。
。
.。
。
.。
。
。
.。
..。
.。
...。
.。
.。
....。
.。
。
..。
..。
.。
。
.。
...。
。
。
..。
.。
。
.。
。
。
。
。
..。
。
.。
.。
..。
.。
。
..。
.。
.。
。
。
...。
.。
.。
..。
.2
3.1系统功能结构。
...。
.。
..。
.。
。
.。
。
。
.。
.。
........。
..........。
。
。
。
....。
..。
.。
。
..。
。
..。
。
....。
。
。
。
。
..。
。
.。
。
。
..。
..。
。
。
..。
..。
..。
。
...。
..。
。
。
..。
。
。
。
。
.。
.。
3
5.1.1用户层。
..。
。
。
。
...。
。
。
。
...。
。
.。
.。
。
。
...。
。
。
.。
。
.。
。
。
。
.。
.。
。
。
.。
..。
。
...。
。
..。
....。
.。
。
...。
.。
.。
。
...。
。
..。
。
。
。
。
.。
。
.。
.。
.。
..。
。
。
.。
.。
........。
..。
。
10
毕业设计选题系统设计与实现
摘要:
随着信息技术与计算机科学的飞速发展,数据库技术在Internet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。
个性化已逐渐成为当今Web应用的潮流。
利用JSP以及myeclipse技术开发的毕业设计选题系统,实现了网站上导师发布课题信息、学生正确选择课题的动态管理,因为可以用来动态发布、选择课题,所以使得对信息的管理更加及时、高效,提高了工作效率,同时为导师和学生都带来了一定的便利。
关键词:
Struts框架;Hibernate框架;Spring框架;JSP;Myeclipse
DesignandImplementationoftheGraduationDesignTopicSystem
Abstract:
AstherapiddevelopmentofInformationTechnologyandComputerScience,DatabasetechnologyareappliedtotheInternetmoreandmorewidely。
forthevastnumberofnetworkuserswithamorethoughtfulandhumanservices。
Personalizationhasbecomethetrendoftoday’sWebapplications.TheGraduationDesignTopicSystem,whichisdevelopedusingtheJSPandMyeclipsetoachievethattheteachercanreleasetheusefulsubjectinformationandthestudentcanchoosethesuitablesubjectavailableonthewebsiteofthedynamicmanagementofinformation,ascanbeusedtopublishinformationdynamicallyandchoosethesubjecteasily.Itmakesthemanagementofinformationmoretimely,efficiently,andimprovestheworkingefficiency.atthesametime;itbringsmuchconveniencetobothteachersandstudents。
Keywords:
Strutsframework;Hibernateframework;Springframework;JSP;Myeclipse
1引言
随着社会信息化程度地不断提高,Internet的快速发展,信息的传播方式发生了翻天覆地的变化,传统的信息传播方式,如电视、广播、报纸等已经满足不了当今物质生活丰富的时代,人们更加愿意通过网络来了解各行各业的信息,通过网络来拓展自己的视野,学习新的知识。
在全球网络化、信息化高度普及的今天,它已经成为人们生活中不可或缺的重要组成部分。
未来的中国乃至世界将会成为互联网的世界,互联网紧紧地把世界地每一个角落联系在一起,而网站系统也将在它所在的领域扮演越来越重要的角色,发挥越来越重要的作用.
1。
1JSP简介
JSP(JavaServerPages)是由SunMicrosystems公司倡导的编码技术[1].本毕业设计所使用的主要开发语言之一是JSP,JSP是一种实现普通静态HTML和动态HTML混合编码的技术。
JSP页面文件通常以。
jsp为扩展名,而且可以安装到任何能够存放普通Web页面的地方。
实质上,JSP最终会被转换成标准的Servlet.同时,JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行,继承了JAVA语言跨平台运行的特性[2,3,4,5,6,7,8]。
JSP设计的目的在于简化表示层的表示。
JSP并没有增加任何本质上不能用Servlet实现的功能。
但是,在JSP中编写静态HTML更加方便;更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开。
除了普通的HTML代码之外,JSP页面的其他成分主要有如下三种:
脚本元素(ScriptingElement)、指令(Directive)和动作(Action).脚本元素用来嵌入Java代码,这些Java代码将成为转换得到的Servlet的一部分;JSP指令用来从整体上控制Servlet的结构,动作用来引入现有的组件来控制Web容器的行为[9,10,11,12]。
JSP与JavaServlet一样,是在服务器端执行的,因此客户端只要有浏览器就能浏览。
1。
2Myeclipse简介
本系统的源程序需要安装Myeclipse,此处版本为Myeclipse8。
5.Myeclipse是eclipse的一个十分优秀的用于开发Java及JavaEE的插件集合,但其也可以作为一个独立的软件。
Myeclipse的功能十分强大,它集成了Struts、Spring和Hibernate等主流开发框架的支持。
同时,对各种开源产品的支持也十分不错,Myeclipse目前支持EJB,Hibernate,JDBC数据库链接工具等多项功能,它几乎囊括了目前所有主流开源产品的专属eclipse开发工具,从而大大简化了Java企业级应用的开发[1]。
1。
3Mysql简介
Mysql是开放源代码的关系型数据库管理系统,可以在多个系统平台中运行,目前广泛应用于Internet上的中小型网站。
由于其体积小、运行速度快、成本低、开源等特性,许多PHP、JavaWeb等网站都采用了该数据库[2].
2系统分析
2.1需求分析[13,14,15]
通过实际调查,要求毕业设计选题系统具有以下功能:
①界面设计要美观大方、操作要简洁灵活。
②实现课题信息的具体管理.
③实现毕业学生的注册功能。
④实现毕业学生选课功能.
⑤实现毕业学生查看自己所选课题。
2。
2可行性分析
由于学生选题时间比较集中,而且都想选到自己喜欢的老师,所以难免会出现一些问题,为了改变这样一种现况,决定开发毕业设计选题系统.这样一来,学生可以登陆进入选题系统,可以根据自己的专业特长或者自己喜欢的老师来选择毕业课题进行毕业设计,毕业设计选题系统中,老师模块可以进入该系统发布自己的课题和课题选择人数限制,以供学生更好的选择,而学生模块,除了可以选择自己想做的课题之外,还可以随时查询自己所选课题。
当然,在学生选择课题之前,需要注册成为本系统的用户,才能够进行毕业课题选择,也就是在进入学生模块之前,首先要进入用户管理模块,通过个人信息注册成为系统用户,从而选择自己的毕业课题.这样大大的减少了教务人员的工作量,提高了工作效率,使学生能够轻松、自由地进行网上选题操作。
毕业设计选题系统的注册用户可以随时修改自己的密码,大大提高了用户的安全性,从而也就保证了系统的安全性。
3系统设计
3。
1系统功能结构
毕业设计选题系统功能结构,如图3-1所示。
图3—1毕业设计选题系统功能结构图
3.2设计目标
该毕业设计选题系统是为了优化毕业设计选题的一系列操作,提高老师和学生的效率,主要的任务是要完成毕业设计选题中的选题操作,学生可以通过该系统实现快速选择自己喜欢的课题,同时,老师也能够更好地帮助自己的学生完成毕业设计,帮助学生完成大学里面最后的也是最重要的一页篇章。
3.3开发及运行环境
硬件平台:
CPU:
Intel(R)Core(TM)i52.53GHz
内存:
2GB
软件平台:
操作系统:
MicrosoftWindows7
数据库:
MySQL
Web服务器:
Myeclipse8.5自带Tomcat6.0服务器
分辨率:
1024*768像素
3。
4数据库设计
本毕业设计选题系统采用MySQL数据库,系统数据库名称为db_graduation。
数据库中各表结构如下所示。
表3-1课题信息表
ColumnName
Datatype
Length
AutoInc
Comment
ID
int
10
是
课题编号
Name
varchar
40
否
课题名称
Credit
decimal
30
否
课题学分
Teachername
varchar
20
否
老师姓名
isfinish
bit
1
否
是否结题
specialtyld
int
10
否
专业编号
表3—2专业信息表
ColumnName
Datatype
Length
AutoInc
Comment
ID
int
4
是
专业编号
enteryear
varchar
10
否
入学年份
name
varchar
40
否
专业名称
langthyear
varchar
10
否
学制
isfinish
bit
1
否
是否毕业
表3—3关联学生与课题一对一关系表
ColumnName
Datatype
Length
AutoInc
Comment
stuID
int
4
否
学生编号
courseID
int
4
否
课题编号
id
int
4
是
表3—4学生基本信息表
ColumnName
Datatype
Length
AutoInc
Comment
ID
int
4
是
学生编号
stuname
varchar
20
否
学生姓名
stuNo
varchar
10
否
学号
specialtyld
int
4
否
专业编号
stusex
varchar
2
否
性别
tel
varchar
20
否
联系电话
表3-5登陆信息表
数据类型
长度
是否主键
描述
ID
int
4
是
用户编号
loginName
varchar
20
否
登陆名称
pwd
varchar
20
否
登陆密码
type
varchar
1
否
用户类型
mail
varchar
50
否
注册邮箱
4系统总体架构
4.1系统页面具体结果显示
系统首页的显示结果如图4-1所示:
图4—1系统首页显示结果
用户注册的页面如图4-2所示:
图4-2用户注册页面显示结果
填写学生基本信息表页面如图4—3所示:
图4-3基本信息填写页面
学生基本信息页面如图4-4所示:
图4-4学生基本信息显示页面
课题选择页面如图4—5所示:
图4—5课题选择页面显示结果
已选课题页面如图4—6所示:
图4-6已选课题页面显示结果
修改登陆密码页面如图4-7所示:
图4—7修改登陆密码页面显示结果
4.2类的分布
毕业设计选题系统是利用SSH框架实现的,毕业设计选题系统中类的分布如图4—8所示。
图4—8类的分布
类存放的文件夹功能如表4—1所示.
表4-1类存放的文件夹功能列表
名称
功能
实体映射层(dto文件夹)
各种方法(登陆、信息显示等)的实现
数据层(dao文件夹)
用户登陆信息,课题信息的接口实现类
用户层(stu文件夹和action文件夹)
存放实现学生模块的Action类,它是Struts的控制器类
Stu文件夹中存放界面操作的各种jsp文件
5系统主要功能模块设计
5.1登陆模块设计
主要是学生登陆,学生通过注册成用户,登陆系统进行选课,而老师直接通过数据库连接对后台进行操作,包括对课题的增删改等,如图5—1所示:
图5—1登陆页面结果显示
如果输入的账号或密码不正确,则会有如下提示。
如图5-2所示:
图5-2登陆错误提示页面
5。
1.1用户层
具体代码如下:
/*************************stuUserAction.java部分代码****************************/
学生添加基础信息:
publicActionForwardinsert(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,HttpServletResponseresponse){
DynaActionFormstu=(DynaActionForm)form;
StuUseruser=newStuUser();
user.setId((Integer)request。
getSession()。
getAttribute("id”));
user.setStuName(stu。
getString(”stuName"));
user.setStuNo(stu。
getString(”stuNo"));
user.setSpecialtyId(Integer。
valueOf(stu.getString(”specialtyId")));
user。
setStuSex(stu。
getString("stuSex”));
user。
setBirthday(stu。
getString(”birthday”));
user.setTel(stu.getString(”tel"));
stuUserDao。
insert(user);
Specialtyspecialty=specialtyDao.findById(user.getSpecialtyId());
request。
setAttribute(”stuUser",user);
request.setAttribute("specialty",specialty);
returnmapping.findForward(”welcome");
}
进入学生模块:
publicActionForwardwelcome(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,HttpServletResponseresponse){
Integerid=(Integer)request。
getSession()。
getAttribute(”id");
StuUserstuUser=stuUserDao。
findById(id);
Specialtyspecialty=specialtyDao.findById(stuUser。
getSpecialtyId());
request。
setAttribute(”stuUser”,stuUser);
request。
setAttribute("specialty",specialty);
returnmapping。
findForward(”welcome");
}
查询已选课题:
publicActionForwardselected(ActionMappingmapping,ActionFormform,
HttpServletRequestrequest,HttpServletResponseresponse){
Integerid=(Integer)request.getSession().getAttribute("id”);
List