为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

电子相册系统的设计与实现

2019-10-01 4页 doc 468KB 2阅读

用户头像 个人认证

春霞

教育从业者

举报
电子相册系统的设计与实现哈尔滨理工大学毕业设计题目:电子相册系统设计与实现院、系:荣成学院软件工程系姓名:xxxxxxx指导教师:xxxxx系主任:xxxxxxx2013年6月21日哈尔滨理工大学毕业设计(论文)评语 学生姓名:xxxxx学号:xxxxx 学院:xxxx专业:软件工程 任务起止时间:2013年9月10日至2014年6月21日 毕业设计(论文)题目:电子相册系统设计与实现 指导教师对毕业设计(论文)的评语:指导教师签名:指导教师职称: 评阅教师对毕业设计(论文)的评语:评阅教师签名:评阅教师职称: 答辩委员会对毕业设计(论文)的评语:答...
电子相册系统的设计与实现
哈尔滨理工大学毕业设计目:电子相册系统设计与实现院、系:荣成学院软件工程系姓名:xxxxxxx指导教师:xxxxx系主任:xxxxxxx2013年6月21日哈尔滨理工大学毕业设计(论文)评语 学生姓名:xxxxx学号:xxxxx 学院:xxxx专业:软件工程 任务起止时间:2013年9月10日至2014年6月21日 毕业设计(论文)题目:电子相册系统设计与实现 指导教师对毕业设计(论文)的评语:指导教师签名:指导教师职称: 评阅教师对毕业设计(论文)的评语:评阅教师签名:评阅教师职称: 答辩委员会对毕业设计(论文)的评语:答辩委员会评定,该生毕业设计(论文)成绩为:答辩委员会主席签名:职称:年月日教务处制表哈尔滨理工大学毕业设计(论文)任务书 学生姓名:xxxxx学号:1xxxxxxx 学院:xxxxx专业:软件工程 任务起止时间:2013年9月10日至2014年6月21日 毕业设计(论文)题目:电子相册系统设计与实现 毕业设计工作内容:随着数码摄影时代的到来,不论是专业摄影师建立图片档案或是向他人展示自己的摄影作品,还是家庭生活摄影,都需要电子相册来保管摄影作品。如同传统的照相簿,电子相册既有展示功能也有存储和管理功能。1.实现用户的注册与登录;2.实现登录用户上传修改照片等功能;3.支持登录用户的管理相册功能;4.未注册用户可以浏览照片发表评论等功能;5.管理员登陆可以添加相册分类; 资料:1李皎,李玲玲,王朔琛.基于Java的电子相册系统设计与实现[J].软件导刊,20122Lanying.MethodofSystemTransferringfromClient/ServetoBrowser/Server[J][J].ComputerandCommunications,20053布鲁斯艾克尔(BruceEckel).Java编程思想(第四版).机械工业出版社,20074梁立新.项目实战精解基于Struts+Spring+Hibernate的Java应用开发.电子工业出版社,2006 指导教师意见:签名:年月日 系主任意见:签名:年月日教务处制表电子相册系统设计与实现摘要随着人们生活水平的逐步提高,旅游照相成了大家必不可少放松项目。虽然照片最后会存入到自己的电脑里,但是时间一长、照片一多,这些有着勾起回忆的“资料”,就会显得杂乱无章,即不方便欣赏,也不方便管理。而电子相册具有欣赏、界面美观等特点,传播方便,可以很好的管理所存入的照片,不失为最佳欣赏、保存照片的相册工具。本系统是一种基于B/S架构的电子相册管理系统,它采用了目前最流行的Java语言进行编写,用到了当今先进的技术如JSP技术、Hibernate、Spring、Struts框架等来实现该系统。系统分为五大模块:相册列表模块、新建相册模块、修改资料模块、修改密码模块、添加相册分类模块。前四大模块是根据注册用户的提供的,注册用户登陆后可以进行添加相册,上传,删除照片,修改资料等一系列操作,最后一个模块是管理员登陆所进行的操作。而如果是未注册用户只能查看相册中的内容,没有权力进行相应的修改。关键词  JAVA;电子相册;SSH框架;MVCTheElectronicAlbumSystemBaseOnSSHFrameworkAbstractWiththegradualimprovementofpeople'slivingstandards,Journeyandphotographisbecomingourindispensableprojectforrelaxing.Althoughthepictureswilleventuallybestoredintotheirowncomputer,butthosepictureswhichhasbrokenbackmemoriesofthepasttime,willbecomedisorganizedafteralongtime.Itisinconvenienttoappreciateandmanage.Electronicalbumhasfeaturesofappreciationandbeautifulinterface.Itiseasilytospread.Thematterofmanagingstoredpictureswillbecomearelaxedthing.Electronicalbumwhichhasbestappreciationwillbecomeaalbumtooltostorepictures.Thissystemisaalbummanagementsystem,whichisbasedonB/Sstructure.Itscodeusesjavatowritewhichisthemostpopularlanguage.Andtoday'sadvancedtechnologiessuchasJSPtechnology,Hibernate,spring,Strutsframeworkareusedtoimplementthesystem.Thissystemisdividedintofivemodules,suchasalbumlistmodule,newalbummodule,modifydatamodule,changepasswordmodule,addalbumclassificationmodule.Thetopfourmodulesareprovidedaccordingtoregisteredusers.Registereduserscandoaseriesofoperationssuchasaddalbums,uploadanddeletephotos,modifydataafteropiningsystem.Thelastmoduleisusedtoperformforanopiningadministrator.Andifauserisnotregistereduser,hecanonlyviewthecontentsofthealbum;thereisnopowertomaketheappropriatechanges.KeywordsJAVA;ElectronPhotoAlbum;SSHFrames;MVC目录I摘要IIAbstract1第1章绪论11.1系统开发的背景和意义11.2研究内容21.3本章小结3第2章需求分析32.1系统总体目标32.2系统数据流图52.3可行性分析72.4本章小结7第3章概要设计83.1系统总体结构83.2系统功能模块结构93.2.1相册列表模块93.2.2新建相册模块93.2.3修改资料模块103.2.4修改密码模块103.2.5添加相册模块103.3系统E-R图143.4本章小结15第4章详细设计154.1系统流程图174.2数据库详细设计174.2.1数据库表的创建184.2.2数据库实现194.3管理员登陆实现194.3.1管理员登陆主页面的创建204.3.2实现过程204.4未注册用户注册实现214.5注册用户登陆实现224.5.1注册用户登陆界面的创建224.5.2注册用户登陆界面234.5.3实现过程234.6添加相册分类的实现234.7管理员登陆界面244.8管理员添加相册界面244.9按钮事件254.10本章小结26第5章系统测试265.1测试目标265.2各模块测试265.2.1注册用户295.2.2管理员295.3本章小结30结论31致谢32参考文献33附录第1章绪论随着数码摄影时代的到来,不论是专业摄影师建立图片档案或是向他人展示自己的摄影作品,还是家庭生活摄影,都需要电子相册来保管摄影作品。如同传统的照相簿,电子相册既有展示功能也有存储和管理功能。1.1系统开发的背景和意义随着人们生活水平的逐步提高,旅游成了大家必不可少的放松项目,每当走到一个美丽的景点,每个人都会忍不住拿起数码相机照上几张留做回忆。虽然照片最后会存入到自己的电脑里,但是时间一长、照片一多,这些有着勾起回忆的资料,就会显得杂乱无章,即不方便欣赏,也不方便管理。而电子相册具有欣赏、传播方便,界面美观等特点,可以很好的管理所存入的照片,不失为最佳欣赏、保存照片的相册工具。电子相册是现在时下最流行的一种网络元素[1]。它可以应该在很多的领域,例如时下最流行的空间及博客就是大量的应该这一技术,而且受到大多数网友的认可及追捧,其以静态照片为素材(获得源方式为扫描仪扫描、数码相机所拍等),配合动感的背景、前景和字幕等视频处理的特殊效果,配上音乐就可制作成电子相册。制作好的电子相册可以在电脑上,各类影碟机上,以及手机和MP4里都能观看,这是电子相册技术发展到今天的一个新的突破,即不再象传统那样,只能在电脑上或在影碟机上观看了。并且还可以通过手机将自己的个性化MTV发送给远方的亲朋好友们分享。当然,如果考虑到长期保存的话,制作成电子相册光盘那是最好的选择,金碟可保存100多年之久,标准VCD、SVCD、DVD格式,兼容性好,通过影牒机即可与家人、朋友、客户观赏;若保存在硬盘上,也便于随时调阅、欣赏,永久保存。另外随着数码相机、手机照相等功能的普及,想必每个人手上都储存了大量的电子相片,但这此照片如果不进行处理,仅仅以一张张图片的形式放置在电脑上,不仅不易观赏,也不方便分类管理,是否有软件能将这些照片整理成一本本的相册,电子相册系统平台就是一款集相册生成、浏览专业软件。1.2研究内容电子相册系统是一种基于B/S架构的系统,它采用目前最流行的java语言编写[2]。用到了当今先进的技术如jsp技术、Hibernate、Spring、Struts框架等来实现该系统[3]。采用MVC框架技术提高了系统的可维护性[4]。本系统所研究的是从电子相册的管理到相册的生成等一系列的问题,大致分为:前台包括相册列表、新建相册、修改资料、修改密码、技术支持,后台包括相册管理。本文共分5章,第1章是绪论,第2章是可需求分析,第3章是概要设计,第4章详细设计,第5章是系统测试。1.3本章小结在本章中主要介绍了电子相册系统的背景和意义、国内外发展现状和研究内容第2章需求分析2.1系统总体目标为了给那些对照片管理感兴趣的朋友提供一个交流的平台,对有很多照片需要管理的朋友,你在这里可以进行注册成为会员,上传自己的照片,也可以着浏览别人的相册,还可以修改个人资料。非注册会员你可以浏览电子相册里别人的相片。对于管理员登陆,可以添加相册分类。人们交流的方式多种多样,但是,我们在交流的同时希望更多的了解对方的信息,本软件即是根据此需求进行开发的。让用户能够通过注册信息,登录并更新及查询自己的相册信息,在此基础上,用户还能够有效的掌握和共享其它资源。从而促进了相册管理的化和集成化,使得用户之间的交流更加的便捷。本软件产品的最终用户来源广泛,相同之处则是为了增进与他人之间的交流。本软件面向大众,用户使用过程中的操作也不复杂。基本功能如下:1.本系统应该具有相片浏览。2.相片上传。3.评论相片、编辑、删除相片。4.用户注册。5.用户管理。6.个人信息修改等功能。具体功能:本系统用户分为普通用户和管理员两种角色,普通用户的功能包含浏览数据库中包含的所有相册和相片,登录系统后上传专属自己的相片,可以查看他人相片,并且提交自己的评论,对自己的相册和相片进行增删改查等操作,未注册用户在提交满足条件的信息后可以注册成功并且实现登录,用户可以进行个人信息的修改,包括qq、电子邮件、等信息,还可以修改密码,也有退出登录功能。管理员的功能包含普通用户的所有功能,管理员独有的功能包含添加文件功能。2.2系统数据流图1.用户使用该系统,首先需要注册用户,其次需要上传照片,这两个是电子相册系统的输入数据流;而输出数据流包括浏览图片和查看评论。如图2-1描述的是电子相册系统的顶层数据流图。图2-1顶层数据流图2.照片ID是自增列,不显示在前台页面,此外,图片名称和描述需要用户以文本框的形式在前台输入。如图2-2描述的是用户在上传照片的过程中存在的数据流图。图2-2上传照片数据流图3.用户需要输入相册名称和相册简介等信息,输入到电子相册系统。如图2-3中描述的是新建相册数据流图。图2-3新建相册数据流图4.用户需要将需要修改的信息,以文本框的形式输入到电子相册系统,然后存储在数据库中。如图2-4中,描述的是修改资料的数据流图。图2-4修改资料数据流图5.用户需要输入原密码和新密码,验证通过后,新密码将存储在数据库中。如图2-5中描述的是修改密码数据流图。图2-5修改密码数据流图6.只有管理员拥有权限,管理员通过登录验证后,以文本框的形式向电子相册系统中输入相册种类名称,最后存储在数据库中。如图2-6种描述的是添加相册的数据流图。图2-6添加相册数据流图2.3可行性分析电子相册系统是基于SSH框架来开发的,主要运用jsp技术、SSH、tomcat等相关技术,以Mysql为后台数据库、Tomcat7.0为应用服务器。这些应用软件都可以在网络上免费下载,并且这些软件都是些最常用的开发工具,都能够快和好的掌握,所以对于本系统在技术上是可以达到的。随着现化时代的来临和人们生活水平的不断提高,人们的生活方式也变得时尚起来了,校园生活,天真浪漫,同窗友情,张张照片为您定格,欣赏昔日身姿,却因照片静态的表现方式让人觉得枯燥;一项活动结束了,留下一叠杂乱无章的照片;一本本厚重的相册,一张张因保存不善而失去往日风采甚至毁损的照片,真让人有些不忍面对,随着电脑软件的发展,人们都迫切的需要一款软件开管理自己的照片。于是开发电子相册将给人一种全新的留念方式,所以该软件开发的市场价值是可行的。1.软硬件需求如下:(1)操作系统:windowsxp/7操作系统(2)界面:简单明了,易于非专业计算机人员使用(3)数据:存入系统中的相片格式为JPEG或者BMP(4)硬件设备:PC机、笔记本电脑(5)数据库:采用Mysql数据库管理(6)服务器:使用Tomcat7.0作为服务器2.程序相关技术如下:(1)JAVA:Java是Sun公司开发的编程语言,使用它可以在各式各样不同的机器、不同操作平台的网络开发环境中开发软件。不论用户使用的是哪一种WWW浏览器、哪一种计算机、哪一种操作系统,只要WWW浏览器上面注明了“Java”,就可以看到生动的页面。用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。另一方面,Java技术也不断更新。java是一种可以撰写跨平台HYPERLINK"http://baike.baidu.com/view/220910.htm"\t"_blank"应用HYPERLINK"http://baike.baidu.com/subview/37/6030295.htm"\t"_blank"软件的面向对象的程序HYPERLINK"http://baike.baidu.com/view/14417.htm"\t"_blank"设计HYPERLINK"http://baike.baidu.com/subview/9793/10663680.htm"\t"_blank"语言,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE,JavaME,JavaSE)的总称。Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学HYPERLINK"http://baike.baidu.com/view/296324.htm"\t"_blank"超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。(2)JAVAEE:J2EE,Java2平台企业版(Java2PlatformEnterpriseEdition),是Sun公司为企业级应用推出的标准平台。Java平台共分为三个主要版本JavaEE、JavaSE和JavaME。随着Java技术的发展,J2EE平台得到了迅速的发展,成为Java语言中最活跃的体系之一。现如今,J2EE不仅仅是指一种标准平台(Platform),它更多的表达着一种软件架构和设计思想。JavaEE本身是一个很好的技术,JavaEE体系结构提供中间层集成框架用来满足没有太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,JavaEE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持。通过技术人员、厂商以及用户的共同努力,JavaEE一定能够成为用户进行电子商务应用和信息化建设的首选。(3)MYSQL:本系统采用的是目前比较流行的小型数据库系统MYSQL。MySQL是瑞典的MySQLAB公司开发的一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统[5]。MySQL完全适用于网络,用其建造的数据库可在因特网上的任何地方访问,因此,可以和网络上任何地方的任何人共享数据库。MySQL具有功能强、使用简单、管理方便、运行速度快、可靠性高、安全保密性强等优点。提供事务和非事务的存储;快速的基于线程的内存分配系统;MySQL采用双重许可,用户可以在GNU许可条款下以免费软件或开放源码软件的方式使用MySQL软件,也可以从MySQLAB公司获得正式的商业许可。(4)SHH框架:本系统是基于J2EE的SSH种框架的集成性开发,其中包括STRUTS框架、SPRING框架、HIBERNATE框架,它们在整个模块的开发过程中起着不同的作用[12]。STRUTS框架主要是MVC结构,而MVC把交互系统的组成分解成模型、视图、控制器三部分[6]。模型(Model)是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,独立于具体的界面表达和I/O操作。视图(View)把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。HIBERNATE框架是一个数据持久层框架,是一种实现对象和关系之间映射(O/RMapping)的工具,它对JDBC进行了轻量级的对象封装,使程序员可以使用对象编程思想来操作数据库[7]。它不仅提供了从Java类到数据表的映射,也提供了数据查询和恢复机制。Spring框架是一个开源框架主要有两大特性包括:依赖注入(IOC)和切面(AOP)在我的这个设计中基本上只体现了其中的一部分也就是IOC依赖注入,所谓的依赖注入就是Spring通过一种称作控制反转(IOC)的技术促进了松耦合[8]。当应用了IOC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。2.4本章小结在本章中,通过对电子相册系统的需求分析了该系统所需要的各种因素进行了分析,明确开发该系统所必需的前提条件。第3章概要设计3.1系统总体结构本系统所研究的是从电子相册的管理到相册的生成等一系列的问题,大致分为:1.相册列表:此模块是注册用户所创建的相册列表,其创建时要选择所属的相册分类,相册名字由注册用户所规定。相册封皮也可以由用户设定。2.新建相册:此功能是注册用户所拥有的,用户可以自己创建想要的相册。3.修改资料:注册用户注册时填写的资料可以在再次登陆时修改。4.技术支持:介绍了所用到的知识点。5.相册分类管理:此功能是管理员登录时拥有的权限,管理员可以添加相册的分类。如图3-1描述的是总体结构图,分为前台和后台。图3-1总体结构图前台主要是普通用户操作,用户可以使用的功能包含查看相册列表、新建相册、修改资料、修改密码、退出登录,后台主要是管理员操作,完成的主要功能是添加文件的功能。3.2系统功能模块结构相册管理系统分为五大模块:相册列表模块、新建相册模块、修改资料模块、修改密码模块、添加相册模块。注:前四大模块是根据注册用户的提供的,而如果是未注册用户只能查看相册中的内容,没有权力进行相应的修改,进行注册后即可实现前四模块。3.2.1相册列表模块1.业务描述:管理相册的相关图片的上传。2.业务流程:用户点击相册列表可以浏览相关的相册,当然点击上传图片就可以进入一个上传图片的页面,在该页面中用户可以根据自己的需要上传相应的图片,为图片取名、分类,提交后返回相册列表。3.输入数据:记录编号是自增列不显示在前台页面;图片名称、文件简介分别以文本框的形式展示在前台页面中,由用户输入。4.角色说明:此功能主要由注册用户和非注册用户使用。3.2.2新建相册模块1.业务描述:添加相册即为用户所处的相册管理模块加入一个新的相册。2.业务流程:点击新建相册的界面,进入新建相册的主界面根据提示输入相关的信息后选择提交,则可看到刚刚新添加的那个相册,然后可以根据自己的需要选择是否加入相片,如果加入的话点击相册,然后点击上传相片,根据提示填写相关的信息,然后选择上传路径单击上传,选择提交,这样系统会自动的生成一个大图片和一个小图片,用来显示封面等操作。3.错误处理:在填写信息的过程中不允许有不被填写的栏目,系统会给出相应的提示。4.输入数据:由用户输入相应的数据信息。5.输出结果:其输出结果为在相册列表中给予相应的显示。6.角色说明:此功能主要注册用户使用。3.2.3修改资料模块1.业务描述:对注册用户来讲,将他们的资料从后台数据库中读取出来然后根据用户的需要进行相应的修改,根据用户资料采集界面来采集相应的数据,根据这些数据来更新数据库中该用户的相应资料。如果是未注册的用户可根据提示进行注册。2.业务流程:从后台数据库中读取出来然后根据用户的需要进行相应的修改3.错误处理:在填写信息的过程中系统会给出相应的提示。4.输入数据:由用户输入相应的数据信息。5.输出结果:无6.角色说明:此功能主要注册用户使用。3.2.4修改密码模块1.业务描述:对注册用户来讲,该模块是用于修改注册用户的登陆系统平台的密码,注册用户可以根据自己的需要来修改其密码。2.业务流程:进入修改密码界面,根据提示给出需要修改的信息,输入验证码后提交即可。3.错误处理:所有字段必须逐一给出相应的数据信息。4.输入数据:由用户输入相应的数据信息。5.输出结果:无。6.角色说明:此功能主要注册用户使用。3.2.5添加相册模块1.业务描述:该模块由系统的管理员来操作,首先系统管理员要根据其所登陆的相关用户员和密码进行登陆,登陆后可以进行一些关于电子相册管理系统的维护工作这里所提到的是关于相册种类的添加,可以根据后台的添加来进行前台的相关操作。2.业务流程:管理员登陆后进行添加操作,填写添加种类的名称点击提交后将在下面相应的下拉菜单中给予显示。3.错误处理:所填种类不能为空,若为空则给予相关。4.输入数据:由管理员给出所要加入的相关种类。5.输出结果:在下拉列表中给显示出相应的种类列表。6.角色说明:此功能主要由管理员使用。3.3系统E-R图1.管理员实体包含ID、姓名和密码三个属性,在数据库中ID设计为自增,姓名和密码用户自己指定,如图3-2所示。图3-2管理员E-R图2.相册实体包含ID、相册名、相册描述、创建时间、访问次数等五个属性,在数据库中ID设计为自增,用户在创建新相册时,需要提交相册名、相册描述等信息,提取系统时间作为创建时间,访问次数根据用户访问次数进行累计,如图3-3所示。图3-3相册E-R图3.相册留言实体包含ID、标题、提交时间等属性,在数据库中ID为自增,用户在添加相册时提交标题、内容,提取系统时间为提交时间,如图3-4所示。图3-4相册留言E-R图4.相片实体包含ID、名称、相片描述、时间、小相片、大相片、更新时间、封面,在数据中ID设计为自增,用户在添加相片操作时需要输入名称、描述、导入照片所在路径等详细内容,满足条件后提交相片信息,如图3-5所示。图3-5相片E-R图5.相片留言实体包含ID、标题、内容、提交时间等四个属性,其中ID在数据库中设计为自增,用户提交标题和内容等信息,如图3-6所示。图3-6相片留言E-R图6.用户实体包含ID、姓名、密码、性别、qq号、邮箱等属性,其中在数据库中ID设计为自增,用户提交姓名、密码、邮箱、性别等信息,如图3-7所示。图3-7用户E-R图7.E-R图为管理员、相册和相册种类的E-R图,管理员和相册之间的联系为一对多,一个管理员可以有多个相册,一个相册只能属于一个管理员,相册和相册种类的练习为一对多,一个相册只能属于一个相册种类,一个相册种类中可以包含有多个相册,如图3-8所示。图3-8总体E-R图8.E-R图为相册和相片之间的E-R图,相册和相片之间的关系为多对多,一个相册中可以包含有多个相片,一个相片可以在多个相册中保存,如图3-9所示。图3-9总体E-R图9.E-R图为相册、相册留言、管理员之间的E-R图,其中相册和相册留言之间的关系为一对多,一个相册可以有多个留言,一个留言只能属于一个相册,相册留言和管理员之间的关系为一对多,一个留言只能属于一个管理员,一个管理员可以发表多个留言,如图3-10所示。图3-10总体E-R图10.相片、相册留言和用户之间的关系,其中相片和相片留言之间的关系为多对多,一个相片可以有多个留言,一个留言可以属于多个相片,相片留言和用户之间的关系为一对多,一个留言只能属于一个用户,一个用户可以发表多个留言,如图3-11所示图3-11总体E-R图3.4本章小结本章详细描述了系统的数据库设计,同时给出了E-R图和数据表的设计表格。并初步得到了系统模型和功能模块划分。第4章详细设计4.1系统流程图1.电子相册系统用户角色分为管理员和普通用户,使用者可以根据自己的身份选择进行不同方向的登录方式,选择普通用户登录后,有四个功能选择,新建相册、修改资料、修改密码和相册列表功能,选择管理员登录之后,管理员可以添加相册种类名称和退出管理两个功能,如图4-1所示。图4-1总体流程图2.点击新建相册的界面,进入新建相册的主界面根据提示输入相关的信息后选择提交,则可看到刚刚新添加的相册,如图4-2所示。图4-2新建相册流程图3.对注册用户来讲,将他们的资料从后台数据库中读取出来然后根据用户的需要进行相应的修改,根据用户资料采集界面来采集相应的数据,根据这些数据来更新数据库中该用户的相应资料,如图4-3所示。图4-3修改资料流程图4.对注册用户来讲,如果用户有需要修改密码的需要,点击修改密码超链接,进入修改密码的jsp页面,在输入原始密码正确的前提下,才能修改密码,如果输入原始密码错误的话,系统会提示用户,密码输入错误,系统检测密码输入正确后,会检测输入的新密码时都满足密码的条件,如果不满足,会提示用户再次输入密码,如图4-4所示。图4-4修改密码流程图4.2数据库详细设计4.2.1数据库表的创建1.管理员信息表包括管理员ID、用户名、密码等详细信息,如表3-1所示。表3-1管理员信息表 字段名 字段类型 字段大小 能否为空 默认 备注 ad_id 整形 11 否 null ad_name 文本 200 是 null ad_pass 文本 200 是 null 2.用户注册信息表包括用户ID、用户名、密码、性别、邮箱、QQ等详细信息,如表3-2。表3-2用户信息表 字段名 字段类型 字段大小 能否为空 默认 备注 c_id 整形 11 否 null c_name 文本 200 是 null c_pass 文本 200 是 null c_sex 文本 1 是 null 3.相册信息表包括相册ID、相册名、简述、创建日期、创建时间等详细信息,如表3-3。表3-3相册信息表 字段名 字段类型 字段大小 能否为空 默认 备注 a_id 整形 11 否 null a_name 文本 200 是 null a_desc 文本 200 是 null a_create_date 时间 0 是 null a_times 时间 0 是 null c_id 整形 11 是 null k_id 整形 11 是 null 4.照片信息表包括相片ID、相片名、相片简述、上传时间、相片大小等详细信息,如表3-4。表3-4相片信息表 字段名 字段类型 字段大小 能否为空 默认 备注 p_id 整形 11 否 null p_title 文本 200 是 null p_desc 文本 200 是 null p_times 文本 0 是 null p_pic 时间 200 是 null p_big_pic 文本 200 是 null p_small_pic 文本 200 是 null p_up_date 时间 0 是 null p_cover 文本 1 是 null a_id 整形 11 是 null 4.2.2数据库实现createdatabasefriend;注意不同操作系统对大小写的敏感。数据库中创建的所有的数据库表:如图4-5所有的数据库表,其中admin表为管理员表,在其中存储的用户具有管理员的权限,album表示相册表,album_kind表示相册种类表,album_word表示相册留言表,client表示用户表,photo表示相片表,photo_word表示相片留言表。图4-5数据库表1.创建的admin管理员表:表4-1管理员表 ad_id ad_name ad_pass 1 admin admin如表4-1admin表中存储的是管理员的列表,只有一条数据,ID为1,name为admin,密码为admin。2.创建的album相片列表:表4-2相片列表 ad_id ad_name a_desc a_create​deate A_times c_id k_id 1 GoodGame 当年一起快乐的时光 2014/5/2715:57:36 10 3 1 2 花 花语 2014/5/2819:39:39 4 1 1 3 1 123123 2014/5/2819:50:43 2 1 1如表4-2中album表中存储的是相册种类的列表,有三条数据。3.创建album_kind相册种类表表4-3相册种类表 k_id k_name k_desc 1 大学同学 这是大学同学 2 高中同学 这是高中同学 3 初中同学 这是初中同学 4 小学同学 这是小学同学如表4-3中albun_king是储存的相册种类列表,有四条数据。4.3管理员登陆实现4.3.1管理员登陆主页面的创建在页面表现上,采用CSS样式表的方式,用记事本编写一个css文件(css.css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率,除此之外,本系统平台引入了现在网络上较为流行的验证码机,所谓验证码就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能。在电子相册系统中也就是说管理员除了给出用户名和密码外还要另再填入给出的验证码(这里的验证码是六位的)点击GO才能以管理员的身份进行电子相册的后台管理界面。4.3.2实现过程管理员功能模块主要包括以下功能:1.管理员登录:用于登录系统;2.添加分类:用于增加分类;3.管理员退出:用于管理员的登陆界面。Struts的核心在于它的Action,一般在Action类中实现对页面的逻辑跳转工作。管理员功能模块的Action实现类继承了DispatchAction类(Action类的子类),实现多业务的操作。在该类中首先需要在属性中实例化管理员模块的ManagerDao类(该类用于实现与数据库的交互)。系统登录模块是电子相册管理系统中最先使用的功能,是进入系统的入口。在系统登录页面中,管理员可以通过输入正确的管理员账号和密码进入到系统,当用户没有输入管理员账号或密码时,系统会通过JavaScript进行判断,并给予提示信息。在管理员登录页面的管理员名称和管理员密码文本框中输入正确的管理员名称和密码后,单击“确定”按钮,网页会访问一个URL,这个URL是“managerAction.do?method=checkManagerAction”。从该URL地址中可以知道系统登录模块涉及到的method的参数值为“checkManagerAction”,也就是当method=checkManagerAction时,会调用ManagerAction类验证管理员身份的方法checkManagerAction(),该类继承了DispatchAction(extendsDispatchAction),实现Struts中的多业务操作。4.4未注册用户注册实现未注册用户登陆的界面设计要简洁明,注册有一个主页面,首先进行的是填写注册信息,然后进行提交操作。图4-6未注册用户注册在注册用户登陆的register.jsp界面中:<html:formaction="clientReg.do"onsubmit="returnvalidateClientRegForm(this)">验证正确的话会跳转到clientReg.do也就是在struts-config.xml配置文件的代码中可以看出<actionpath="/clientReg"scope="request"name="clientRegForm"validate="true"input="/WEB-INF/jsp/register.jsp">代码中可以看到如果它所属的form为clientRegFormStruts-config.xml中对应的form-bean如图4-6中截图显示的是未注册用户的注册界面,普通用户进入电子相册系统后,可以点击注册超链接进入注册界面,在输入满足条件的注册信息之后,系统将该注册信息录入数据库中。在页面表现上,采用了CSS样式表的方式,用记事本编写了一个css文件(css.css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率。该模块完成用户注册的过程,用户注册后才能完成图书订阅等功能。流程分析本模块包含了两个页面文件,register.htm完成用户注册信息录入;register.jsp完成检查数据的可靠性,符合要求的数据写入userinfo数据表。在这个模块里,用户可以输入“性别”,“昵称”,“密码”,“重复密码”,“QQ”,e-mail,验证码等信息,然后单击“注册”按钮提交注册信息,如果注册所用的用户名已经存在于数据库中,系统会报错。如果用户数据的“新密码”和“新密码确认”内容不一致,系统也会报错。用户一旦通过注册。就在数据库中存储了该用户的注册信息,该用户就可以凭此信息进行登录。4.5注册用户登陆实现注册用户登陆的界面设计要简洁明,登陆有一个主页面,首先进行的是验证,判断登陆者的权限,注册用户登陆界面。图4-7注册用户登陆如图4-7中截图显示的是普通用户登录界面,普通用户需要输入满足条件的用户名和密码之后,系统跳转至主界面。4.5.1注册用户登陆界面的创建在页面表现上,采用CSS样式表的方式,用记事本编写一个css文件(css.css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率,除此之外,本系统平台引入了现在网络上较为流行的验证码机,也就是说注册用户除了给出用户名和密码外还要另再填入给出的验证码(这里的验证码是四位的)点击登陆才能以管理员的身份进行电子相册的后台管理界面。除此之外用户可以点击更换来重新成生验证码。4.5.2注册用户登陆界面注册用户权限进入时,其登陆成功界面如如图4-8所示:(这里以tomcat为用户名登陆举例)图4-8注册用户登陆如图4-8中截图显示的是登陆成功后的显示界面,因为注册之后首次登录,因此系统中没有任何照片信息。设计思想:用户登录模块,该模块需要确认三部分信息,首先得确认系统用户的身份,是否存在该用户,其次,若该用户存在则判断用户的密码,最后,若密码正确则判断用户的角色,三部分信息都正确则登陆到系统主页面。登陆界面是Web应用项目中的大门,它能阻止一些“非法用户”访问Web项目中的功能。4.5.3实现过程验证的过程是注册验证,把注册信息发送到服务器,由服务器存进数据库;验证的时候,把客户端登陆时发过来的用户信息跟数据库中的比较,相同即通过验证,否则提示错误信息。4.6添加相册分类的实现管理员功能中添加相册的界面设计要简洁明,添加相册有一个主页面,首先要进行相应的数据输入,然后提交操作。4.7管理员登陆界面如图4-9所示,即为管理员登陆主界面,管理员可以输入自己的账号,密码以及验证码即可登陆进入后即可进行管理操作等。图4-9管理员登陆在管理员登陆的login.jsp界面中:<html:formaction="adminLogin.do"onsubmit=“returnvalidateAdminLoginForm(this)">从上面的代码可以看出如果返回的是真值也就是说验证正确的话会跳转到adminLogin.do也就是<!--后台管理员登录--><actionpath="/adminLogin"name="adminLoginForm"scope="request"validate="true"input="/WEB-INF/jsp/admin/login.jsp"><forwardname="success"path="/WEB-INF/jsp/admin/admin_index.jsp"/><forwardname="wrong"path="/WEB-INF/jsp/admin/login.jsp"/><forwardname="wrongCode"path="/WEB-INF/jsp/admin/login.jsp"/></action>进行相应的跳转。4.8管理员添加相册界面1.管理员添加相册界面如图:图4-10理员添加相册界面如图4-10图显示的是系统管理员登录成功之后的界面,管理员可以添加相册分类,提交成功后显示分类信息。2.管理员添加相册的创建:在页面表现上,采用CSS样式表的方式,用记事本编写一个css文件(css.css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率,在页面步局和设计方面在此就不多加以介绍。下面的部分中主要介绍一下具体的实现过程。4.9按钮事件方法创建一个新的按钮:JButtonabout=newJButton;这个按钮该放到菜单区:toolBar.add(about);要为按钮添加事件响应,需要使用about.addActionListener(this)来告诉程序监听按钮按下时的事件,ActionListener是一个程序接口。publicclassKyodaiUIextendsJFrameimplementsActionListener{...}实现ActionListener接口是为了告诉程序我要进行事件处理了。最后我们得添加响应事件的代码:publicvoidactionPerformed(ActionEvente){if(e.getSource()==about){JOptionPane.showMessageDialog(this,"数据1","数据2",JOptionPane.INFORMATION_MESSAGE);return;}}4.10本章小结本章进行了系统的详细设计与实现,首先简单得进行了该系统的系统流程介绍,然后对系统的新建相册功能、修改资料功能、修改密码功能等进行第5章系统测试5.1测试目标软件测试的目标是:测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的方案;成功的测试方案是发现了至今为止尚未发现的错误的测试。测试目标决定了测试方案的设计,如果是为了表明程序的正确性而进行测试,就会设计出一些不易保露错误的测试方案;如果测试是为了发现程序中的错误,就会力求设计出最能暴露错误的测试方案。5.2各模块测试如表5-1所示,为每个界面所测试的条件以及动作,可以根据此表对每个界面进行测试。表5-1测试用例表 开始界面 条件 动作 结束页面 备注 主页面 用户 登陆 主菜单页面 登录和注册过程中系统会进行验证 管理员 登陆 主菜单页面 选择一个相册 点击该相册 相册列表页面 初始显示第一页 相册列表页面 选择一个相册 点击该相册 相片显示页面 初始显示第一页 相片显示页面 查看相片 点击相片 相片显示页面 查看相片 留言显示页面 查看评论 点击相片 相片显示页面 在相片列表中显示留言的内容 添加文件页面 管理员登陆成功 点击添加文件分类按钮 添加成功页面 输入类的名称,显示添加的分类5.2.1注册用户点击“我的相册”进入用户登录页面,在此页面上输入注册用户的昵称,密码,验证码后点击登陆按钮可以进入用户的相册列表页面。点击相册名称就可以进入到相应的相册,可以通过点击查看评论,设为相册封面,修改,删除等按钮实现相应的功能。见图5-1到5-51.相片上传测试(1)如图5-1截图显示的是上传照片成功后的界面。图5-1保存信息测试图(2)如图5-2截图显示的是查看相片评论的界面。图5-2查看评论界面2.修改相片信息测试图5-3修改相片信息界面如图5-3截图显示的是修改相片信息的界面。显示结果正确。3.新建相册测试如图5-4截图显示的是新建相册信息的界面图5-4新建相册界面4.修改资料测试如图5-5截图显示的是修改资料信息的界面,可以修改信息。图5-5修改资料界面5.2.2管理员点击管理员登陆进入管理员登录页面,在此页面上输入管理员名称,密码,验证码后点击登陆按钮可以进入管理员页面。点击“添加文件”进入添加相册分类页面,在添加分类栏中输入分类名字,在管理分类中选择相应的项,点击提交即可。如图5-6所示。图5-6管理员添加分类页面如图5-6截图显示的是管理员添加相册分类成功后的界面。5.3本章小结在本章中,详细地向读者讲述了如何使用Spring+Struts+Hibernate技术来构建了一个简单的电子相册系统。相信通过本章的学习,读者对Spring+Struts+Hibernate开发有了一定的认识。系统实现使整个系统由思想变为现实。系统实现主要体现在灵活多变,不拘泥于一种想法,要尽量使程序更加完善。在本章中,通过对各个模块的仔细测试,结果均正确。结论在本次设计开发过程中,在代码的整体编排上独立性有一很大的提高,但是随之而来的,在可读性方面可能还有一些欠缺考虑的地方存在,对于其本系统的设计者来看,整体的架构可能还不太清晰,总体还是不够好,今后应该在实践中继续提高,在注释的书写方面也是有待加强,应着重重视这一方面文字的书写,这样更可以便于阅读,加快读程序者了解程序整体架构和思路,这也是日后要加强的部分。在管理员权限方面,由于设计的时间安排不够合理,管理员的功能没能够完全实现,比如管理员应该可以删除分类,但这次设计中没有完成此功能。另一方面,在一说明书中一些图表的说明上有欠考虑,有些图表不能清晰的说明问题的全部,也就是说在整体的思路上还不太明确,对设计的划分上有些模糊的概念,不能很深层次上剖析设计的思想,只能在表层上阐述,让读者看起来有些摸不清整体的脉络,这也是在日后的学习中需要进一步思考的问题。总之,由于个人的知识水平和经验的不足,本设计中可能存在很多的问题,我会在今后的学习中逐步加强。致谢岁月如梭,我四年的大学时光也即将敲响结束的钟声。离别在即,站在人生的又一个转折点上,心中难免思绪万千,一种感恩之情油然而生。生我者父母。感谢生我养我,含辛茹苦的父母。是你们,为我的学习创造了条件;是你们,一如既往的站在我的身后默默的支持着我。没有你们就不会有我的今天。谢谢你们,我的父亲母亲!在这四年中,老师的谆谆教导、同学的互帮互助使我在专业技术和为人处事方面都得到了很大的提高。感谢的是我学校的指导老师xxx老师,在校外实习期间,刘老师不厌其烦地给予我指导帮助,并且在很多方便为我提供了很大的便利条件,使我能够较好地平衡工作与毕设的时间问题,刘老师对我的论文进行了严格细致的指导,他严谨的工作作风也教育了我以后的工作要更加认真细致。其次要感谢校外的实习单位及其领导,因为他们的理解、帮助与支持,我才可以在实习阶段完成这次的设计任务,在此对他们表示深深的感谢。总之,要感谢所有在我完成设计的过程中给予过我帮助的老师及同学,感谢他们的热情帮助和大力的支持,在此表达我最衷心的感谢。参考文献1李皎,李玲玲,王朔琛.基于Java的电子相册系统设计与实现[J].软件导刊,2012:69~712Lanying.MethodofSystemTransferringfromClient/ServetoBrowser/Server[J].ComputerandCommunications,2005:20~333布鲁斯艾克尔(BruceEckel).Java编程思想(第四版).机械工业出版社,2007:45~674梁立新.项目实战精解基于Struts+Spring+Hibernate的Java应用开发.电子工业出版社,2006:30~505DuBoisP.MySQL[M].Addison-WesleyProfessional,2009:80~896孙卫琴.精通struts基于mvc的javaweb设计与开发.电子工业出版社,2006:60~647夏昕,曹晓刚,唐勇.深入浅出Hibernate.电子工业出版社,2007:45~788廖雪峰.Spring2.0核心技术与最佳实践.电子工业出版,2007:20~289庄成三,洪玫,杨秋.数据库系统原理及其应用[M].电子工业出版社,2000:40~4210LieHW,SaarelaJ.MultipurposeusingCSS[J].CommunicationsoftheACM,1999:95~10111MaynePW,KulhawyFH.K\do-OCRRelationshipsinSoil[J]。JournaloftheGeotechnicalEngineeringDivision,1982:851~87212刘斌.精通JavaWeb整合开发.电子工业出版社,2007:30~4413刘聪.零基础学
/
本文档为【电子相册系统的设计与实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索