计算机科学与技术品牌专业建设系统学位论文.docx
《计算机科学与技术品牌专业建设系统学位论文.docx》由会员分享,可在线阅读,更多相关《计算机科学与技术品牌专业建设系统学位论文.docx(41页珍藏版)》请在冰豆网上搜索。
计算机科学与技术品牌专业建设系统学位论文
计算机科学与技术品牌专业建设系统
软件工程
学院:
专业:
指导教师:
2014年6月
计算机科学与技术品牌专业建设系统
摘要
随着Internet技术的快速发展,人与人之间交流方式逐渐增多。
网络视频、网络聊天、博客已成为人们彼此沟通、交流信息的主要方式。
此外,为了方便人们在某一专业领域探讨问题和发表意见,Internet上还出现了在线学术讨论社区。
在社区上,人们可以对某一领域提出自己遇到的问题,即发表某一专业特色,随后,在线讨论社区上的其他人会根据自己的学识、经验发表意见或提出问题的方法。
开发计算机科学与技术品牌专业建设系统的目的是提供一个供用户交流的专业平台,为广大用户提供交流经验、探讨专业问题的网上学科社区。
因此,计算机科学与技术品牌专业建设系统最基本的功能首先是添加学科特色,其次是其他人员根据专业特色发表自己的对本专业的看法。
此外,为了记录专业特色的发表者和专业特色的回复者信息,系统还需要提供用户注册和登录的功能。
只有注册的用户登录后才能够发表和回复本专业特色信息,浏览者(游客)只能浏览特色信息。
本系统是基于是Struts2+Hibernate+Spring+MySQL实现的,它具有使用方便、操作灵活、运行稳定、安全可靠等特点。
关键词:
品牌专业建设,专业特色,S2SH
Computer science and technology brand professional
construction system
Abstract
WiththerapiddevelopmentofInternettechnology,communicationbetweenpeopleisgraduallyincreasing.Networkvideo,Internetchat,bloghasbecomethemainwayforpeopletocommunicatewitheachother,exchangeofinformation.Inaddition,inordertoallowpeopleinaprofessionalfieldtoprobeintoquestionsandcomments,Internetalsoappearedontheonlineforum.Attheforum,peoplecanputtheirownproblemsinaparticularfield,namely:
atheme,then,therestoftheforumcommentsorquestions:
accordingtotheirknowledge,experience.
Systemofprofessionalconstructionscienceandtechnologydevelopmentofbrandcomputerisdesignedtoprovideaprofessionalplatformforuserstocommunicate,exchangeexperience,exploreprovidesprofessionalissuesforthemajorityofusersofonlineacademiccommunity.Therefore,thebasicfunctionofthesystemconstructionofcomputerscienceandtechnologyprofessionalbrand,firstistoaddthesubjectcharacteristics,followedbyotherpersonnelaccordingtotheprofessionalcharacteristicspublishedtheirowntheprofessionalopinion.Inaddition,inordertorecordthereleaseprofessionalcharacteristicsandprofessionalcharacteristicsoftherespondents’information,systemalsoneedstoprovideuserregistrationandloginfunction.Onlyregisteredusersloginordertopublishandrespondtotheprofessionalcharacteristicinformation,visitors(tourists)canonlybrowsefeatureinformation.
ThisforumsystemisbasedonaStruts2+Hibernate+Spring+MySQL,ithasthecharacteristicsofconvenientuse,flexibleoperation,stableoperation,safetyandreliabilityetc.
Keywords:
Brandprofessionalconstruction,Professionalcharacteristics,S2SH
目录
1绪论1
2系统分析2
2.1需求分析2
2.2可行性分析2
3系统总体设计4
3.1系统目标4
3.2系统功能结构4
3.2.1前台功能结构4
3.2.2后台功能结构5
3.3系统流程图5
3.4系统开发环境7
3.4.1开发环境7
3.4.2系统平台体系结构的选择7
3.4.3JSP语言8
3.4.4MYSQL数据库9
3.4.5S2SH开发技术介绍10
4数据库设计16
4.1数据库分析16
4.2数据库概念设计16
4.3数据库逻辑设计20
5系统详细设计与实现23
5.1前台设计23
5.1.1前台页面设计与实现23
5.1.2查看专业特色详细信息24
5.1.3对专业特色发表意见25
5.1.4查看本专业特色他人意见26
5.1.5个人意见信息管理27
5.1.6修改个人注册信息28
5.2后台设计29
5.2.1管理员登录29
5.2.2后台页面设计与实现30
6结论31
参考文献33
致谢34
1绪论
随着互联网日益深入社会生活,BBS开发技术发展至今,从CGI,ASP,到PHP已经日趋成熟,功能也更加丰富,但携着Sun公司的Java技术所实现的“一次编写,到处运行”的优势,继承这一衣钵的JSP技术越来越受到人们的注视。
BBS作为一种对外的展示窗口,进行内外信息交流,已成为大众的广泛需要。
为了进行更好的交流,用户想就自己的专业和爱好能和其他的用户进行及时专业的交流,这就有了计算机科学与技术品牌专业建设系统,这样以来我们就可以在网络这个虚拟的空间中方便地实现交流,计算机科学与技术品牌专业建设系统是我们在这个校园生活的重要交流工具。
所以我选择使用JSP开发计算机科学与技术品牌专业建设系统这一课题作为毕业设计。
Java是未来的主流开发技术,具有很多优势。
JSP则是Java在Internet/IntranetWeb上的重要应用技术,得到了广泛的支持和承认,它可以和各种Java技术完好地结合在一起,从而实现非常复杂的应用。
本网站使用Struts2+Hibernate+Spring+MySQL在MyEclipse系统开发的,从而创建一个更为稳定,高效,安全的运行环境。
本文主要实现了基于B/S模式的一种Javaee计算机专业特色建设信息的设计与实现,主要功能是实现客户端和服务器端的动态交互。
本系统最基本的功能首先是管理员发表专业特色,其次是其他人员根据专业特色发表自己对本专业的看法。
此外,为了记录专业特色的发表者和专业特色的回复者信息,系统还需要提供用户注册和登录的功能。
只有注册的用户登录后才能够发表和回复专业特色,浏览者(游客)只能浏览相关专业信息。
根据用户的需求及以上的分析,计算机科学与技术品牌专业建设系统需要具备以下功能:
显示各院系类别及专业特色标题、查看专业特色下所有专业特色详细信息、用户讨论意见、用户注册、用户登录、发表自己对本专业特色建设的建议信息、进入后台、院系管理、专业特色管理、用户管理和用户注册等等。
设计计算机科学与技术品牌专业建设系统所要考虑的问题主要有如何通过资源文件显示文字和使用静态代码块。
设计中力求界面友好、简洁,易于操作。
代码部分尽量避免逻辑错误,算法设计简单合理,尽量使程序具有较好的可读性,有利于其他的设计者对程序的阅读;力求对数据库操作的安全与稳定,尽量避免数据库操作异常,并要保证查询的快速无误。
保证程序的逻辑结构,编程时注意多使用通用方法(函数和过程)。
2系统分析
2.1需求分析
2.1.1功能性需求
开发计算机科学与技术品牌专业建设系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。
因此,计算机科学与技术品牌专业建设系统最基本的功能首先是添加专业特色,其次是其他人员根据专业特色发表自己的意见。
此外,为了记录专业特色的发表者和专业特色的回复者信息,系统还需要提供用户注册和登录的功能。
只有注册的用户登录后才能够发表和回复专业特色信息,浏览者(游客)只能浏览专业特色信息。
根据用户的需求及以上的分析,计算机科学与技术品牌专业建设系统需要具备前台功能和后台功能。
(1)系统前台功能:
显示各院系类别及特色信息、查看特色信息下所有专业特色详细信息、用户讨论意见、用户注册、用户登录、发表自己对本专业特色建设的建议信息。
(2)系统后台功能:
管理员登录、院系管理、专业特色管理、用户管理等等。
2.1.2非功能性需求
(1)平台限制:
基于WindowsXP/windows7,不需要安装其他软件。
(2)操作方式:
全部操作都可以基于浏览器进行。
2.2可行性分析
可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。
可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
2.2.1技术可行性
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。
该计算机科学与技术品牌专业建设系统采用了流行的JSP语言和当前新兴的Browser/Server(浏览器/服务器)模式进行开发。
三层的B/S体系结构具有许多传统Client/Server(客户机/服务器)体系结构不具备的优点,而且又紧密的结合了Internet/Intranet(国际互联网/企业内部互联网)技术,是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。
数据库服务器选用MYSQL数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。
它的灵活性、安全性和易用性为数据库编程提供了良好的条件。
因此,系统的软件开发平台已成熟可行。
硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台能满足此系统的需要。
2.2.2经济可行性
主要是对项目的经济效益进行评估,本系统模拟的是提供一个供用户交流的专业平台,为广大用户提供交流经验、探讨问题的社区。
但实际只是用于个人的毕业设计,只是模拟,也不存在资金的流动,故在经济上是可行的。
2.2.3社会可行性
随着Internet技术的快速发展,专业学科讨论平台已成为人们彼此沟通、交流信息的主要方式。
在平台上,人们可以对某一特色建设提出自己见解与看法,随后,专业交流平台上的其他人会根据自己的学识、经验发表意见或提出问题的方法。
专业学科讨论平台接近了人们之间的距离,它早已成为人们网上生活的必备工具。
所以说品牌专业建设系统对当今社会是相当重要的。
3系统总体设计
3.1系统目标
对于典型的数据库管理系统,尤其是对像专业特色讨论这样的数据流量特别大的网络管理系统,必须要满足使用方便、操作灵活等设计需求。
本系统在设计时应满足以下几个目标:
1.采用人机对话的操作方式,界面设计美观友好,信息查看灵活、方便、快捷、准确,数据存储安全可靠。
2.全面展示系统内所有院系的专业特色信息,并进行分页显示。
3.为用户提供一个方便、快捷的专业特色信息查看功能。
4.实现在线添加专业特色。
5.算法简单实用。
6.操作简单,易于理解,便于使用。
7.软件应具有自身的规范。
8.屏幕设计简洁明快,屏幕元素布局合理。
5.提供登录模块,主要用于管理员登录系统和发表专业特色意见时留下发表者的信息。
6.用户随时都可以查看自己发表的建议。
7.对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。
8.系统最大限度地实现了易维护性和易操作性。
9.系统运行稳定安全可靠。
3.2系统功能结构
3.2.1前台功能结构
用户访问首页面后,可进行查看该院系下专业特色信息、查看本专业全部详细信息、查看其他用户对本专业的建议信息,还可以实现用户注册、用户登录等功能。
用户在此品牌专业建设系统中通过注册成为该网站的真正用户,然后成功登录系统后,可进行发表相关专业特色意见、可以修改自身的注册信息、也可以查看并管理自己发表的专业特色建议等操作。
前台功能结构图如图3.1所示。
图3.1前台功能结构图
3.2.2后台功能结构
若用户的权限为管理员,则可进入后台,可进行院系类别的管理、特色管理和用户管理的操作。
后台功能结构图如图3.2所示。
图3.2后台功能结构图
3.3系统流程图
计算机科学与技术品牌专业建设系统的系统后台流程图如图3.3所示。
图3.3计算机科学与技术品牌专业建设系统后台流程图
计算机科学与技术品牌专业建设系统的前台流程图如图3.4所示。
图3.4计算机科学与技术品牌专业建设系统的台流程图
3.4系统开发环境
3.4.1开发环境
在开发此品牌专业建设系统的时候,需要具备下面的软件环境
服务器端:
●操作系统:
WindowsXP/Windows7。
●Web服务器:
Tomcat6.0。
●Java开发包:
JDK1.6。
●数据库:
MYSQL。
●浏览器:
IE6.0。
●分辨率:
最佳效果为1024×768像素。
客户端:
●浏览器:
IE6.0。
●分辨率:
最佳效果为1024×768像素。
3.4.2系统平台体系结构的选择
在应用开发领域中,目前系统平台的体系结构主要有两种,即C/S(Client/Server)结构和B/S(Brower/Server)结构。
C/S结构,即大家熟知的客户机和服务器结构。
它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。
B/S结构,即浏览器和服务器结构。
它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。
由于没能提供用户
真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用,而且代价高,效率低。
B/S结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
因此本系统采用了B/S结构。
3.4.3JSP语言
JSP(JavaServerPages)是由Sun公司倡导,许多别的公司参与一起创建的一种新动态网页技术标准,类似其他技术标准。
在传统的网页HTML文件(*.htm,*.html)中加入Java程序片断(Scriptlet)和JSP标签,构成了JSP网页(*.jsp)Servlet/JSPContainer收到客户端发出的请求时,首先执行其中的程序片断,软后将执行结果以HTML格式响应给客户端,其中程序片断可以是:
操作数据库,重新定向网页以及发送E-Mail等等,这些都是建立动态网站所需要的功能。
所有程序操作都在服务器端运行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP称为Server-sideLanguage。
所以被许多人认为是未来最有发展前途的动态网站技术之一。
语言优势如下:
1.将内容的生成和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。
使用JSP标识或者小脚本来生成页面上的动态内容。
生成的内容的逻辑被封装在标识和JavaBeans组件中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面而不影响内容的生成。
2.一次编写,到处运行
作为Java平台的一部分,JSP拥有Java编程语言“一次编写,到处运行”的特点,随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,但并不影响当前的应用。
3.JSP的平台适应性更广
这是JSP比ASP的优越之处,几乎所有的平台都支持Java,它们可以在任何平台下通行无阻。
虽然NT的OS占据了很大的市场的份额,但在服务器方面UNIX的优势仍然很大.从一个平台移植到另一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标注的字节码与平台无关。
4.健壮的存储管理和安全性
由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译为JavaServlet,JSP页面就具有Java技术的所有优点,包括健壮的存储管理和安全性。
3.4.4MYSQL数据库
MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。
由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。
1.MySQL的特点与作用
MySQL数据库的主要功能只在组织和管理很庞大或复杂的信息和基于WEB的库存查询请求不仅仅为客户提供信息,而且还可以为您自己使用数据库可以提供如下功能:
一)减少记录编档的时间
二)减小记录检索时间
三)灵活的查找序列
四)灵活的输出格式
五)多个用户同时访问记录
2.安全性
当运行MySQL安装程序时,确保用户所存储的数据的安全性是很重要的。
MySQL管理员有责任控制对数据目录和服务器的访问,并应了解以下的问题:
文件系统的安全性。
UNIX机器可能会使几个用户账号成为宿主账号,而这些账号都没有与MySQL相关的管理职责。
确保这些账号没有对数据目录的访问是重要的。
因为这样可以防止它们通过拷贝数据库表或移动数据库表,或者通过能够读取包含敏感信息的日志文件来损坏文件系统级的数据。
您应该知道如何建立MySQL服务器的UNIX用户账号,如何建立该用户所拥有的数据目录,以及如何启动服务器以便利用该用户的权限运行。
服务器的安全性。
必须了解MySQL的安全系统是怎样进行工作的,以便在建立用户账号时授予适当的权限。
通过网络连接到服务器的用户只允许做他们应该做的事情。
您不要由于对安全系统的错误理解,将超级用户的访问权授予匿名用户。
3.数据库修复和维护
所有的MySQL管理员都希望避免处理破坏的或毁坏的数据库表。
但是愿望不能代替现实。
以下几个步骤可以使您在问题发生时减少风险并学会怎样处理问题:
崩溃恢复。
如果尽管您做了最好的努力但灾难还是降临了,则应该知道如何修复或恢复表。
很少会用到崩溃恢复,但当使用它时,它是一个令人讨厌的、高强度的工作(尤其是当您正在忙乱地修正某些内容时,电话铃响了或有人敲门)。
然而,您必须知道怎样处理它,否则用户将会很不高兴。
要熟悉isamchk和myisamchk的表的检查以及修复能力;要知道如何尽可能地从备份文件中恢复,并且知道怎样使用该更新日志来恢复备份之后所产生的修改。
预防性维护。
预防性维护的常规程序应适当地进行安置,以使数据库破坏和毁坏的可能性最小化。
当然,您还要进行备份,但是,预防性维护将减少使用这些备份的机会。
综上所述,MySQL由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,被广泛地应用在Internet上的中小型网站中。
随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用。
3.4.5S2SH开发技术介绍
计算机科学与技术品牌专业建设系统选取S2SH架构来设计和开发,S2SH是SSH升级版,以前的SSH架构中的用到的MVC框架是struts,而S2SH中的MVC框架用到的是struts2,struts2与struts有很大的区别,配置更灵活,开发更方便,利用其开发的插件与hibernate,spring能达到无缝集成,本系统采用三层架构,用struts2处理前端,hibernate封装对数据库的访问,spring对struts2、hibernate和业务逻辑层中进行对象的管理,三个框架各司其职,有利于项目开发的分工,使项目开发达到更灵活性和可维护性。
系统的基本业务流程是:
在表示层中,首先通过JSP页面实现交互界面,负责接收请求(Request)和传送响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。
在业务层中,管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。
而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。
S2SH三层架构如图3.5所示:
图3.5S2SH三层架构
struts2技术介绍
Struts2是目前比较成熟的Web开发框架, Struts2框架是Struts1.X的替代版本,Struts2框架整合了Struts1.X框架和WebWork框架的优点。
相对Struts1.X,Struts2已经有了非常大的改变,去掉了ActionForm,降低了框架组件之间的耦合性,Struts2的Action只是普通的Java