哈 尔 滨 理 工 大 学
毕 业 设 计
题 目: 电子相册系统设计与实现 院、 系: 荣成学院 软件工程系 姓 名: xxxxx xx 指导教师: xxxxx 系 主 任: xxxxxxx
2013年6月21日
哈尔滨理工大学毕业设计(论文)评语
学生姓名: xxxxx 学号:xxxxx 学 院: xxxx 专业:软件工程 任务起止时间: 2013 年 9 月 10 日至 2014 年 6 月 21 日 毕业设计(论文)题目:电子相册系统设计与实现 指导教师对毕业设计(论文)的评语: 指导教师签名: 指导教师职称: 评阅教师对毕业设计(论文)的评语: 评阅教师签名: 评阅教师职称: 答辩委员会对毕业设计(论文)的评语: 答辩委员会评定,该生毕业设计(论文)成绩为: 答辩委员会签名: 职称: 年 月 日 教务处制表 1
哈尔滨理工大学毕业设计(论文)任务书
学生姓名: xxxxx 学号:1xxxxxxx 学 院: xxxxx 专业:软件工程 任务起止时间: 2013 年 9 月 10 日 至 2014 年 6 月 21 日 毕业设计(论文)题目: 电子相册系统设计与实现 毕业设计工作内容: 随着数码摄影时代的到来,不论是专业摄影师建立图片档案或是向他人展示自己的摄影作品,还是家庭生活摄影,都需要电子相册来保管摄影作品.如同传统的照相簿,电子相册既有展示功能也有存储和管理功能. 1。实现用户的注册与登录; 2。实现登录用户上传修改照片等功能; 3.支持登录用户的管理相册功能; 4。未注册用户可以浏览照片发表评论等功能; 5。管理员登陆可以添加相册分类; 资料: 1 李皎,李玲玲, 王朔琛. 基于 Java 的电子相册系统设计与实现[J]. 软件导刊,2012 2 Lanying.Method of System Transferring from Client/Serve to Browser/Server [J][J].Computer and Communications,2005 3 布鲁斯艾克尔(Bruce Eckel).Java编程思想(第四版).机械工业出版社,2007 4 梁立新.项目实战精解基于Struts+Spring+Hibernate的Java应用开发.电子工业出版社,2006 指导教师意见: 签名: 年 月 日 系主任意见: 签名: 年 月 日 教务处制表 2
哈尔滨理工大学学士学位论文 电子相册系统设计与实现
摘 要
随着人们生活水平的逐步提高,旅游照相成了大家必不可少放松项目.虽然照片最后会存入到自己的电脑里,但是时间一长、照片一多,这些有着勾起回忆的“资料”,就会显得杂乱无章,即不方便欣赏,也不方便管理。而电子相册具有欣赏、界面美观等特点,传播方便,可以很好的管理所存入的照片,不失为最佳欣赏、保存照片的相册工具。
本系统是一种基于B/S架构的电子相册管理系统,它采用了目前最流行的Java语言进行编写,用到了当今先进的技术如JSP技术、Hibernate、Spring、Struts框架等来实现该系统。系统分为五大模块:相册列表模块、新建相册模块、修改资料模块、修改密码模块、添加相册分类模块.前四大模块是根据注册用户的提供的,注册用户登陆后可以进行添加相册,上传,删除照片,修改资料等一系列操作,最后一个模块是管理员登陆所进行的操作。而如果是未注册用户只能查看相册中的内容,没有权力进行相应的修改。
关键词 JAVA;电子相册;SSH框架;MVC
I
哈尔滨理工大学学士学位论文 The Electronic Album System Base On SSH
Framework Abstract
With the gradual improvement of people’s living standards,Journey and photograph is becoming our indispensable project for relaxing. Although the pictures will eventually be stored into their own computer, but those pictures which has broken back memories of the past time, will become disorganized after a long time。 It is inconvenient to appreciate and manage。 Electronic album has features of appreciation and beautiful interface. It is easily to spread 。The matter of managing stored pictures will become a relaxed thing. Electronic album which has best appreciation will become a album tool to store pictures。
This system is a album management system, which is based on B / S structure 。Its code uses java to write which is the most popular language. And today’s advanced technologies such as JSP technology, Hibernate, spring, Struts framework are used to implement the system。
This system is divided into five modules, such as album list module, new album module, modify data module, change password module, add album classification module。 The top four modules are provided according to registered users. Registered users can do a series of operations such as add albums, upload and delete photos, modify data after opining system。 The last module is used to perform for an opining administrator. And if a user is not registered user, he can only view the contents of the album; there is no power to make the appropriate changes.
II
哈尔滨理工大学学士学位论文
Keywords JAVA; Electron Photo Album; SSH Frames; MVC
III
哈尔滨理工大学学士学位论文 目 录
摘 要 ...................................................................................................................... I Abstract .................................................................................................................... II 第1章 绪论 ............................................................................................................. 1 1。1 系统开发的背景和意义 .............................................................................. 1 1。2 研究内容 ...................................................................................................... 1 1.3 本章小结 ......................................................................................................... 2 第2章 需求分析 ..................................................................................................... 3 2。1 系统总体目标 .............................................................................................. 3 2.2 系统数据流图 ................................................................................................. 3 2。3 可行性分析 .................................................................................................. 5 2。4 本章小结 ...................................................................................................... 7 第3章 概要设计 ..................................................................................................... 8 3.1系统总体结构 ................................................................................................. 8 3。2系统功能模块结构 ...................................................................................... 9 3.2.1相册列表模块 ........................................................................................... 9 3.2.2新建相册模块 ........................................................................................... 9 3。2。3修改资料模块 ..................................................................................... 9 3。2。4修改密码模块 ................................................................................... 10 3。2。5添加相册模块 ................................................................................... 10 3.3 系统E—R图 ................................................................................................ 10 3.4 本章小结 ....................................................................................................... 14 第4章 详细设计 ................................................................................................... 15 4.1 系统流程图 ................................................................................................... 15 4.2 数据库详细设计 ........................................................................................... 17 4.2。1数据库表的创建 .................................................................................. 17 4.2。2 数据库实现 ......................................................................................... 18 4。3管理员登陆实现 ........................................................................................ 19 4.3.1管理员登陆主页面的创建 ..................................................................... 19 4.3.2 实现过程 ................................................................................................ 20 4。4 未注册用户注册实现 ................................................................................ 20 4。5 注册用户登陆实现 .................................................................................... 21 4。5.1 注册用户登陆界面的创建 ................................................................. 22 4。5。2 注册用户登陆界面 .......................................................................... 22
IV
哈尔滨理工大学学士学位论文 4。5。3 实现过程 .......................................................................................... 22 4。6 添加相册分类的实现 ................................................................................ 23 4.7 管理员登陆界面 ........................................................................................... 23 4。8 管理员添加相册界面 ................................................................................ 24 4。9按钮事件方法 ............................................................................................ 24 4。10 本章小结 .................................................................................................. 25 第5章 系统测试 ................................................................................................... 26 5.1测试目标 ....................................................................................................... 26 5。2各模块测试 ................................................................................................ 26 5。2.1 注册用户 ............................................................................................. 26 5.2.2管理员 ..................................................................................................... 29 5。3 本章小结 .................................................................................................... 29 结论 ......................................................................................................................... 30 致谢 ......................................................................................................................... 31 参考文献 ................................................................................................................. 32 附录 ......................................................................................................................... 33
V
哈尔滨理工大学学士学位论文 第1章 绪论
随着数码摄影时代的到来,不论是专业摄影师建立图片档案或是向他人展示自己的摄影作品,还是家庭生活摄影,都需要电子相册来保管摄影作品。如同传统的照相簿,电子相册既有展示功能也有存储和管理功能。
1。1 系统开发的背景和意义
随着人们生活水平的逐步提高,旅游成了大家必不可少的放松项目,每当走到一个美丽的景点,每个人都会忍不住拿起数码相机照上几张留做回忆。虽然照片最后会存入到自己的电脑里,但是时间一长、照片一多,这些有着勾起回忆的资料,就会显得杂乱无章,即不方便欣赏,也不方便管理.而电子相册具有欣赏、传播方便,界面美观等特点,可以很好的管理所存入的照片,不失为最佳欣赏、保存照片的相册工具.电子相册是现在时下最流行的一种网络元素[1]。它可以应该在很多的领域,例如时下最流行的空间及博客就是大量的应该这一技术,而且受到大多数网友的认可及追捧,其以静态照片为素材(获得源方式为扫描仪扫描、数码相机所拍等),配合动感的背景、前景和字幕等视频处理的特殊效果,配上音乐就可制作成电子相册。制作好的电子相册可以在电脑上,各类影碟机上,以及手机和MP4里都能观看,这是电子相册技术发展到今天的一个新的突破,即不再象传统那样,只能在电脑上或在影碟机上观看了。并且还可以通过手机将自己的个性化MTV发送给远方的亲朋好友们分享。当然,如果考虑到长期保存的话,制作成电子相册光盘那是最好的选择,金碟可保存100多年之久,标准VCD、SVCD、DVD格式,兼容性好,通过影牒机即可与家人、朋友、客户观赏;若保存在硬盘上,也便于随时调阅、欣赏,永久保存.
另外随着数码相机、手机照相等功能的普及,想必每个人手上都储存了大量的电子相片,但这此照片如果不进行处理,仅仅以一张张图片的形式放置在电脑上,不仅不易观赏,也不方便分类管理,是否有软件能将这些照片整理成一本本的相册,电子相册系统平台就是一款集相册生成、浏览专业软件。
1。2 研究内容
电子相册系统是一种基于B/S架构的系统,它采用目前最流行的java语言编写[2].用到了当今先进的技术如 jsp技术、Hibernate、Spring、Struts框架等来实现该系统[3].采用MVC框架技术提高了系统的可维护性[4]。
本系统所研究的是从电子相册的管理到相册的生成等一系列的问题,大致分为:前台包括相册列表、新建相册、修改资料、修改密码、技术支持,
1
哈尔滨理工大学学士学位论文 后台包括相册管理.
本文共分5章,第1章是绪论,第2章是可需求分析,第3章是概要设计,第4章详细设计,第5章是系统测试。
1.3 本章小结
在本章中主要介绍了电子相册系统的背景和意义、国内外发展现状和研究内容
2
哈尔滨理工大学学士学位论文 第2章 需求分析
2。1 系统总体目标
为了给那些对照片管理感兴趣的朋友提供一个交流的平台,对有很多照片需要管理的朋友,你在这里可以进行注册成为会员,上传自己的照片,也可以着浏览别人的相册,还可以修改个人资料。非注册会员你可以浏览电子相册里别人的相片.对于管理员登陆,可以添加相册分类。
人们交流的方式多种多样,但是,我们在交流的同时希望更多的了解对方的信息,本软件即是根据此需求进行开发的。
让用户能够通过注册信息,登录并更新及查询自己的相册信息,在此基础上,用户还能够有效的掌握和共享其它资源.从而促进了相册管理的规范化和集成化,使得用户之间的交流更加的便捷。本软件产品的最终用户来源广泛,相同之处则是为了增进与他人之间的交流。本软件面向大众,用户使用过程中的操作也不复杂。基本功能如下:
1。本系统应该具有相片浏览。 2.相片上传。
3。评论相片、编辑、删除相片. 4.用户注册。 5。用户管理.
6。个人信息修改等功能。
具体功能:本系统用户分为普通用户和管理员两种角色,普通用户的功能包含浏览数据库中包含的所有相册和相片,登录系统后上传专属自己的相片,可以查看他人相片,并且提交自己的评论,对自己的相册和相片进行增删改查等操作,未注册用户在提交满足条件的信息后可以注册成功并且实现登录,用户可以进行个人信息的修改,包括qq、电子邮件、等信息,还可以修改密码,也有退出登录功能.管理员的功能包含普通用户的所有功能,管理员独有的功能包含添加文件功能。
2。2 系统数据流图
1.用户使用该系统,首先需要注册用户,其次需要上传照片,这两个是电子相册系统的输入数据流;而输出数据流包括浏览图片和查看评论。如图2-1描述的是电子相册系统的顶层数据流图.
3
哈尔滨理工大学学士学位论文
图2-1顶层数据流图
2.照片ID是自增列,不显示在前台页面,此外,图片名称和描述需要用户以文本框的形式在前台输入。如图2—2描述的是用户在上传照片的过程中存在的数据流图。
图2—2 上传照片数据流图
3.用户需要输入相册名称和相册简介等信息,输入到电子相册系统.如图2—3中描述的是新建相册数据流图。
图2-3 新建相册数据流图
4.用户需要将需要修改的信息,以文本框的形式输入到电子相册系统,然后存储在数据库中。如图2-4中,描述的是修改资料的数据流图。
图2—4 修改资料数据流图
5.用户需要输入原密码和新密码,验证通过后,新密码将存储在数据库中.如图2-5中描述的是修改密码数据流图。
4
哈尔滨理工大学学士学位论文
图2—5 修改密码数据流图
6.只有管理员拥有权限,管理员通过登录验证后,以文本框的形式向电子相册系统中输入相册种类名称,最后存储在数据库中.如图2—6种描述的是添加相册的数据流图。
图2-6 添加相册数据流图
2。3 可行性分析
电子相册系统是基于SSH框架来开发的,主要运用jsp技术、SSH、tomcat等相关技术,以Mysql为后台数据库、Tomcat7.0为应用服务器.这些应用软件都可以在网络上免费下载,并且这些软件都是些最常用的开发工具,都能够快和好的掌握,所以对于本系统在技术上是可以达到的。
随着现化时代的来临和人们生活水平的不断提高,人们的生活方式也变得时尚起来了,校园生活,天真浪漫,同窗友情,张张照片为您定格,欣赏昔日身姿,却因照片静态的表现方式让人觉得枯燥;一项活动结束了,留下一叠杂乱无章的照片;一本本厚重的相册,一张张因保存不善而失去往日风采甚至毁损的照片,真让人有些不忍面对,随着电脑软件的发展,人们都迫切的需要一款软件开管理自己的照片。于是开发电子相册将给人一种全新的留念方式,所以该软件开发的市场价值是可行的.
1.软硬件需求如下:
(1)操作系统:windows xp/7操作系统
(2)界面:简单明了,易于非专业计算机人员使用 (3)数据:存入系统中的相片格式为JPEG或者BMP (4)硬件设备:PC机、笔记本电脑 (5)数据库:采用Mysql数据库管理
(6) 服务器:使用Tomcat7。0作为服务器
2.程序相关技术如下: (1)JAVA :Java是Sun公司开发的编程语言,使用它可以在各式各样不同的机器、不同操作平台的网络开发环境中开发软件。不论用户使用的是
5
哈尔滨理工大学学士学位论文 哪一种WWW浏览器、哪一种计算机、哪一种操作系统,只要WWW浏览器上面注明了“Java”,就可以看到生动的页面。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算.从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet.另一方面,Java技术也不断更新。java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE, JavaME, JavaSE)的总称。Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景.
(2)JAVA EE:J2EE,Java2平台企业版(Java 2 Platform Enterprise Edition),是Sun公司为企业级应用推出的标准平台.Java平台共分为三个主要版本Java EE、Java SE和Java ME.
随着Java技术的发展,J2EE平台得到了迅速的发展,成为Java语言中最活跃的体系之一.现如今,J2EE不仅仅是指一种标准平台(Platform),它更多的表达着一种软件架构和设计思想。JavaEE本身是一个很好的技术,JavaEE体系结构提供中间层集成框架用来满足没有太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,JavaEE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持.通过技术人员、厂商以及用户的共同努力,JavaEE一定能够成为用户进行电子商务应用和信息化建设的首选方案.
(3)MY SQL:本系统采用的是目前比较流行的小型数据库系统MYSQL。
MySQL是瑞典的MySQL AB公司开发的一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统[5]。MySQL 完全适用于网络,用其建造的数据库可在因特网上的任何地方访问,因此,可以和网络上任何地方的任何人共享数据库。MySQL具有功能强、使用简单、管理方便、运行速度快、可靠性高、安全保密性强等优点。提供事务和非事务的存储机制;快速的基于线程的内存分配系统;MySQL采用双重许可,用户可以在GNU许可条款下以免费软件或开放源码软件的方式使用MySQL软件,也可以从MySQL AB公司获得正式的商业许可。
(4)SHH框架:本系统是基于J2EE的SSH种框架的集成性开发,其中包括STRUTS框架、SPRING框架、HIBERNATE框架,它们在整个模块的开发过程中起着不同的作用[12]。
STRUTS框架主要是MVC结构,而MVC把交互系统的组成分解成模
6
哈尔滨理工大学学士学位论文 型、视图、控制器三部分[6].模型(Model)是软件所处理问题逻辑在于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,于具体的界面表达和I/O操作。视图(View)把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户.
HIBERNATE框架是一个数据持久层框架,是一种实现对象和关系之间映射(O/R Mapping)的工具,它对JDBC进行了轻量级的对象封装,使程序员可以使用对象编程思想来操作数据库[7]。它不仅提供了从Java类到数据表的映射,也提供了数据查询和恢复机制.
Spring框架是一个开源框架主要有两大特性包括:依赖注入(IOC)和切面(AOP)在我的这个设计中基本上只体现了其中的一部分也就是IOC依赖注入,所谓的依赖注入就是Spring通过一种称作控制反转(IOC)的技术促进了松耦合[8].当应用了IOC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
2。4 本章小结
在本章中,通过对电子相册系统的需求分析了该系统所需要的各种因素进行了分析,明确开发该系统所必需的前提条件.
7
哈尔滨理工大学学士学位论文 第3章 概要设计
3。1系统总体结构
本系统所研究的是从电子相册的管理到相册的生成等一系列的问题,大致分为:
1.相册列表:此模块是注册用户所创建的相册列表,其创建时要选择所属的相册分类,相册名字由注册用户所规定。相册封皮也可以由用户设定.
2。新建相册:此功能是注册用户所拥有的,用户可以自己创建想要的相册。
3。修改资料:注册用户注册时填写的资料可以在再次登陆时修改。 4。技术支持:介绍了所用到的知识点。
5.相册分类管理:此功能是管理员登录时拥有的权限,管理员可以添加相册的分类.
如图3—1描述的是总体结构图,分为前台和后台。
电子相册平台 前台后台 相册列表新建相册修改资料修改密码退出登陆添加相册的分类前台主要是普通用户操作,用户可以使用的功能包含查看相册列表、新建相册、修改资料、修改密码、退出登录,后台主要是管理员操作,完成的主要功能是添加文件的功能。
图 3—1 总体结构图
8
哈尔滨理工大学学士学位论文 3。2系统功能模块结构
相册管理系统分为五大模块:相册列表模块、新建相册模块、修改资料模块、修改密码模块、添加相册模块。注:前四大模块是根据注册用户的提供的,而如果是未注册用户只能查看相册中的内容,没有权力进行相应的修改,进行注册后即可实现前四模块。
3.2.1相册列表模块
1。业务描述:管理相册的相关图片的上传。
2.业务流程:用户点击相册列表可以浏览相关的相册,当然点击上传图片就可以进入一个上传图片的页面,在该页面中用户可以根据自己的需要上传相应的图片,为图片取名、分类,提交后返回相册列表。
3.输入数据:记录编号是自增列不显示在前台页面;图片名称、文件简介分别以文本框的形式展示在前台页面中,由用户输入.
4。角色说明:此功能主要由注册用户和非注册用户使用。
3。2。2新建相册模块
1。业务描述:添加相册即为用户所处的相册管理模块加入一个新的相册。
2.业务流程:点击新建相册的界面,进入新建相册的主界面根据提示输入相关的信息后选择提交,则可看到刚刚新添加的那个相册,然后可以根据自己的需要选择是否加入相片,如果加入的话点击相册,然后点击上传相片,根据提示填写相关的信息,然后选择上传路径单击上传,选择提交,这样系统会自动的生成一个大图片和一个小图片,用来显示封面等操作。
3.错误处理:在填写信息的过程中不允许有不被填写的栏目,系统会给出相应的提示。
4。输入数据:由用户输入相应的数据信息.
5。输出结果:其输出结果为在相册列表中给予相应的显示。 6.角色说明:此功能主要注册用户使用.
3.2。3修改资料模块
1。业务描述:对注册用户来讲,将他们的资料从后台数据库中读取出来然后根据用户的需要进行相应的修改,根据用户资料采集界面来采集相应的数据,根据这些数据来更新数据库中该用户的相应资料。如果是未注册的用户可根据提示进行注册。
2。业务流程:从后台数据库中读取出来然后根据用户的需要进行相应的修改
3。错误处理:在填写信息的过程中系统会给出相应的提示。
9
哈尔滨理工大学学士学位论文 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所示。
管理员ID姓名密码 图3—2 管理员E—R图
10
哈尔滨理工大学学士学位论文 2。相册实体包含ID、相册名、相册描述、创建时间、访问次数等五个属性,在数据库中ID设计为自增,用户在创建新相册时,需要提交相册名、相册描述等信息,提取系统时间作为创建时间,访问次数根据用户访问次数进行累计,如图3—3所示。
相册ID相册名访问次数相册描述创建时间 图3—3 相册E-R图
3.相册留言实体包含ID、标题、提交时间等属性,在数据库中ID为自增,用户在添加相册时提交标题、内容,提取系统时间为提交时间,如图3—4所示.
相册留言ID标题内容提交时间 图3-4 相册留言E—R图
4。相片实体包含ID、名称、相片描述、时间、小相片、大相片、更新时间、封面,在数据中ID设计为自增,用户在添加相片操作时需要输入名称、描述、导入照片所在路径等详细内容,满足条件后提交相片信息,如图3—5所示.
相片ID名称描述时间相片大相片小相片更新时间封面图3—5 相片E—R图
5.相片留言实体包含ID、标题、内容、提交时间等四个属性,其中ID在数据库中设计为自增,用户提交标题和内容等信息,如图3—6所示。
11
哈尔滨理工大学学士学位论文 相片留言ID标题内容提交时间 图3-6 相片留言E—R图
6。用户实体包含ID、姓名、密码、性别、qq号、邮箱等属性,其中在数据库中ID设计为自增,用户提交姓名、密码、邮箱、性别等信息,如图3-7所示。
用户ID姓名 密码性别qq号邮箱 图3—7用户E—R图
7。 E—R图为管理员、相册和相册种类的E-R图,管理员和相册之间的联系为一对多,一个管理员可以有多个相册,一个相册只能属于一个管理员,相册和相册种类的练习为一对多,一个相册只能属于一个相册种类,一个相册种类中可以包含有多个相册,如图3—8所示。
图3-8总体E-R图
8. E-R图为相册和相片之间的E—R图,相册和相片之间的关系为多对多,一个相册中可以包含有多个相片,一个相片可以在多个相册中保存,如图3-9所示。
12
哈尔滨理工大学学士学位论文 图3—9总体E-R图
9。 E—R图为相册、相册留言、管理员之间的E-R图,其中相册和相册留言之间的关系为一对多,一个相册可以有多个留言,一个留言只能属于一个相册,相册留言和管理员之间的关系为一对多,一个留言只能属于一个管理员,一个管理员可以发表多个留言,如图3-10所示。
图3—10 总体E—R图
10。 相片、相册留言和用户之间的关系,其中相片和相片留言之间的关系为多对多,一个相片可以有多个留言,一个留言可以属于多个相片,相片留言和用户之间的关系为一对多,一个留言只能属于一个用户,一个用户可以发表多个留言,如图3-11所示
13
哈尔滨理工大学学士学位论文 图3—11 总体E—R图
3。4 本章小结
本章详细描述了系统的数据库设计,同时给出了E-R图和数据表的设计表格。并初步得到了系统模型和功能模块划分。
14
哈尔滨理工大学学士学位论文 第4章 详细设计
4。1 系统流程图
1。电子相册系统用户角色分为管理员和普通用户,使用者可以根据自己的身份选择进行不同方向的登录方式,选择普通用户登录后,有四个功能选择,新建相册、修改资料、修改密码和相册列表功能,选择管理员登录之后,管理员可以添加相册种类名称和退出管理两个功能,如图4—1所示.
开始管理员登录功能选择登录“我的相册”输入必要的登录信息,进入管理员界面修改密码功能选择新建相册相册列表添加文件功能选择退出管理修改资料输入分类名称,提交结束
图 4—1 总体流程图
2.点击新建相册的界面,进入新建相册的主界面根据提示输入相关的信息后选择提交,则可看到刚刚新添加的相册,如图4-2所示.
15
哈尔滨理工大学学士学位论文 开始 输入用户名密码 显示出错原因 NO 输入正确 YES 进入新建相册页面 结束 图 4—2 新建相册流程图
3。对注册用户来讲,将他们的资料从后台数据库中读取出来然后根据用户的需要进行相应的修改,根据用户资料采集界面来采集相应的数据,根据这些数据来更新数据库中该用户的相应资料,如图4—3所示.
开始 输入用户名密码 显示出错原因 否 输入正确 是 进入修改资料页面 结束
图4-3修改资料流程图
4。对注册用户来讲,如果用户有需要修改密码的需要,点击修改密码超链接,进入修改密码的jsp页面,在输入原始密码正确的前提下,才能修改密码,如果输入原始密码错误的话,系统会提示用户,密码输入错误,系统检测密码输入正确后,会检测输入的新密码时都满足密码的条件,如果
16
哈尔滨理工大学学士学位论文 不满足,会提示用户再次输入密码,如图4—4所示。
开始 输入原密码和新密码 显示出错 否 输入正确 是 密码修改成功 结束
图4-4修改密码流程图
4。2 数据库详细设计
4。2。1数据库表的创建
1.管理员信息表包括管理员ID、用户名、密码等详细信息,如表3—1所示.
表3—1管理员信息表 字段名 ad_id ad_name ad_pass 字段类型 整形 文本 文本 字段大小 11 200 200 能否为空 否 是 是 默认 null null null 备注 2。用户注册信息表包括用户ID、用户名、密码、性别、邮箱、QQ等详细信息,如表3—2。
表3—2 用户信息表 字段名 c_id c_name c_pass c_sex 字段类型 整形 文本 文本 文本 字段大小 11 200 200 1 能否为空 否 是 是 是 默认 null null null null 备注 3.相册信息表包括相册ID、相册名、简述、创建日期、创建时间等详细信息,如表3—3。
17
哈尔滨理工大学学士学位论文 表3-3相册信息表 字段名 a_id a_name a_desc a_create_date a_times c_id k_id 字段类型 整形 文本 文本 时间 时间 整形 整形 字段大小 11 200 200 0 0 11 11 能否为空 否 是 是 是 是 是 是 默认 null null null null null null null 备注 4。照片信息表包括相片ID、相片名、相片简述、上传时间、相片大小等详细信息,如表3—4。
表3—4相片信息表 字段名 p_id p_title p_desc p_times p_pic p_big_pic p_small_pic p_up_date p_cover a_id 字段类型 整形 文本 文本 文本 时间 文本 文本 时间 文本 整形 字段大小 11 200 200 0 200 200 200 0 1 11 能否为空 否 是 是 是 是 是 是 是 是 是 默认 null null null null null null null null null null 备注 4。2。2 数据库实现
create database friend;注意不同操作系统对大小写的敏感。数据库中创建的所有的数据库表:
如图4-5 所有的数据库表,其中admin表为管理员表,在其中存储的用户具有管理员的权限,album表示相册表,album_kind表示相册种类表,album_word表示相册留言表,client表示用户表,photo表示相片表,photo_word表示相片留言表。
图4—5 数据库表
18
哈尔滨理工大学学士学位论文 1。创建的admin管理员表:
表4-1管理员表 ad_id 1 ad_name admin ad_pass admin 如表4-1 admin表中存储的是管理员的列表,只有一条数据,ID为1,name为admin,密码为admin。
2。创建的album相片列表:
ad_id 1 2 3 ad_name GoodGame 花 1 表4-2 相片列表 a_create-a_desc deate 当年一起2014/5/27 快乐的时15:57:36 光 2014/5/28 花语 19:39:39 2014/5/28 123123 19:50:43 A_times 10 4 2 c_id 3 1 1 k_id 1 1 1 如表4—2中album表中存储的是相册种类的列表,有三条数据。 3. 创建album_kind相册种类表
表4—3相册种类表 k_id 1 2 3 4 k_name 大学同学 高中同学 初中同学 小学同学 k_desc 这是大学同学 这是高中同学 这是初中同学 这是小学同学 如表4—3中albun_king是储存的相册种类列表,有四条数据。 4.3管理员登陆实现
4.3.1管理员登陆主页面的创建
在页面表现上,采用CSS样式表的方式,用记事本编写一个css文件(css.css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率,除此之外,本系统平台引入了现在网络上较为流行的验证码机,所谓验证码就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能.在电子相册系统中也就是说管理员除了给出用户名和密码外还要另再填入给出的验证码(这里的验证码是六位的)点击GO才能以管理员的身份进行电子相册的后台管理界面。
19
哈尔滨理工大学学士学位论文 4。3。2 实现过程
管理员功能模块主要包括以下功能: 1.管理员登录:用于登录系统; 2。添加分类:用于增加分类;
3.管理员退出:用于管理员的登陆界面.
Struts的核心在于它的Action,一般在 Action类中实现对页面的逻辑跳转工作。管理员功能模块的Action实现类继承了DispatchAction类(Action类的子类),实现多业务的操作。在该类中首先需要在属性中实例化管理员模块的ManagerDao类(该类用于实现与数据库的交互).
系统登录模块是电子相册管理系统中最先使用的功能,是进入系统的入口.在系统登录页面中,管理员可以通过输入正确的管理员账号和密码进入到系统,当用户没有输入管理员账号或密码时,系统会通过 JavaScript进行判断,并给予提示信息.
在管理员登录页面的管理员名称和管理员密码文本框中输入正确的管理员名称和密码后,单击“确定”按钮,网页会访问一个URL,这个URL是“manager Action.do? method= checkManagerAction\".从该URL地址中可以知道系统登录模块涉及到的method的参数值为 “checkManagerAction”,也就是当method=checkManagerAction时,会调用ManagerAction类验证管理员身份的方法checkManagerAction(),该类继承了DispatchAction(extends DispatchAction),实现Struts中的多业务操作.
4.4 未注册用户注册实现
未注册用户登陆的界面设计要简洁明,注册有一个主页面,首先进行的是填写注册信息,然后进行提交操作。
图4-6未注册用户注册
在注册用户登陆的register。jsp界面中: 〈html:formaction=”clientReg
20
。
哈尔滨理工大学学士学位论文 do\"onsubmit=”returnvalidateClientRegForm(this)”>
验证正确的话会跳转到clientReg。do也就是在struts—config.xml配置文件的代码中可以看出
〈actionpath=”/clientReg”scope=”request\"name=\"clientRegForm” validate=”true” input=”/WEB-INF/jsp/register。jsp\"〉
代码中可以看到如果它所属的form为clientRegForm Struts-config。xml中对应的form-bean
如图4—6中截图显示的是未注册用户的注册界面,普通用户进入电子相册系统后,可以点击注册超链接进入注册界面,在输入满足条件的注册信息之后,系统将该注册信息录入数据库中。
在页面表现上,采用了CSS样式表的方式,用记事本编写了一个css文件(css。css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率.该模块完成用户注册的过程,用户注册后才能完成图书订阅等功能。
流程分析本模块包含了两个页面文件,register。htm完成用户注册信息录入;register.jsp完成检查数据的可靠性,符合要求的数据写入userinfo数据表.在这个模块里,用户可以输入“性别”,“昵称”,“密码\重复密码\",“QQ\mail,验证码等信息,然后单击“注册”按钮提交注册信息,如果注册所用的用户名已经存在于数据库中,系统会报错。如果用户数据的“新密码”和“新密码确认\"内容不一致,系统也会报错。用户一旦通过注册。就在数据库中存储了该用户的注册信息,该用户就可以凭此信息进行登录。
4。5 注册用户登陆实现
注册用户登陆的界面设计要简洁明,登陆有一个主页面,首先进行的是验证,判断登陆者的权限,注册用户登陆界面。
图 4—7 注册用户登陆
如图4—7中截图显示的是普通用户登录界面,普通用户需要输入满足条件的用户名和密码之后,系统跳转至主界面。
21
哈尔滨理工大学学士学位论文 4。5.1 注册用户登陆界面的创建
在页面表现上,采用CSS样式表的方式,用记事本编写一个css文件(css.css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率,除此之外,本系统平台引入了现在网络上较为流行的验证码机,也就是说注册用户除了给出用户名和密码外还要另再填入给出的验证码(这里的验证码是四位的)点击登陆才能以管理员的身份进行电子相册的后台管理界面.除此之外用户可以点击更换来重新成生验证码.
4。5。2 注册用户登陆界面
注册用户权限进入时,其登陆成功界面如如图4—8所示:(这里以tomcat为用户名登陆举例)
图4—8 注册用户登陆
如图4—8中截图显示的是登陆成功后的显示界面,因为注册之后首次登录,因此系统中没有任何照片信息。
设计思想:
用户登录模块,该模块需要确认三部分信息,首先得确认系统用户的身份,是否存在该用户,其次,若该用户存在则判断用户的密码,最后,若密码正确则判断用户的角色,三部分信息都正确则登陆到系统主页面。
登陆界面是Web应用项目中的大门,它能阻止一些“非法用户\"访问Web项目中的功能。
4.5。3 实现过程
验证的过程是注册验证,把注册信息发送到服务器,由服务器存进数据库;验证的时候,把客户端登陆时发过来的用户信息跟数据库中的比较,相同即通过验证,否则提示错误信息。
22
哈尔滨理工大学学士学位论文 4。6 添加相册分类的实现
管理员功能中添加相册的界面设计要简洁明,添加相册有一个主页面,首先要进行相应的数据输入,然后提交操作。
4。7 管理员登陆界面
如图4-9所示,即为管理员登陆主界面,管理员可以输入自己的账号,密码以及验证码即可登陆 进入后即可进行管理操作等.
图4—9管理员登陆
在管理员登陆的login。jsp界面中:
从上面的代码可以看出如果返回的是真值也就是说验证正确的话会跳转到adminLogin。do也就是
〈!——后台管理员登录-—〉
〈action path=\"/adminLogin” name=”adminLoginForm\" scope=”request” validate=\"true\" input=\"/WEB—INF/jsp/admin/login。jsp\">
〈forward name=\"wrong” path=”/WEB-INF/jsp/admin/login。jsp\"/> 〈forward name=\"wrongCode\" path=”/WEB—INF/jsp/admin/login。jsp\"/〉 〈/action〉 23 哈尔滨理工大学学士学位论文 进行相应的跳转。 4.8 管理员添加相册界面 1.管理员添加相册界面如图: 图4—10理员添加相册界面 如图4—10图显示的是系统管理员登录成功之后的界面,管理员可以添加相册分类,提交成功后显示分类信息。 2.管理员添加相册的创建: 在页面表现上,采用CSS样式表的方式,用记事本编写一个css文件(css。css),每个jsp页面都引入这个文件,这样当需要变更页面图片背景等静态属性时,就直接修改css文件,而无需对页面本身进行任何改动,大大提高效率,在页面步局和设计方面在此就不多加以介绍。下面的部分中主要介绍一下具体的实现过程。 4。9按钮事件方法 创建一个新的按钮:JButton about = new JButton; 这个按钮该放到菜单区:toolBar。add(about);要为按钮添加事件响应,需要使用about。addActionListener(this)来告诉程序监听按钮按下时的事件,ActionListener是一个程序接口.public class KyodaiUI extends JFrame implements ActionListener {.。.}实现ActionListener接口是为了告诉程序我要进行事件处理了。最后我们得添加响应事件的代码: public void actionPerformed(ActionEvent e) { if (e.getSource() == about) { JOptionPane.showMessageDialog(this, ”数据1”, ”数据2\JOptionPane.INFORMATION_MESSAGE); return ; } 24 哈尔滨理工大学学士学位论文 } 4。10 本章小结 本章进行了系统的详细设计与实现,首先简单得进行了该系统的系统流程介绍,然后对系统的新建相册功能、修改资料功能、修改密码功能等进行 25 哈尔滨理工大学学士学位论文 第5章 系统测试 5。1测试目标 软件测试的目标是:测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的方案;成功的测试方案是发现了至今为止尚未发现的错误的测试. 测试目标决定了测试方案的设计,如果是为了表明程序的正确性而进行测试,就会设计出一些不易保露错误的测试方案;如果测试是为了发现程序中的错误,就会力求设计出最能暴露错误的测试方案. 5。2各模块测试 如表5-1所示,为每个界面所测试的条件以及动作,可以根据此表对每个界面进行测试。 表5—1 测试用例表 开始界面 主页面 主菜单页面 相册列表页面 相片显示页面 留言显示页面 条件 用户 管理员 选择一个相册 选择一个相册 查看相片 查看评论 管理员登陆成功 动作 登陆 登陆 点击该相册 点击该相册 点击相片 点击相片 点击添加文件分类按钮 相册列表页面 相片显示页面 相片显示页面 相片显示页面 结束页面 主菜单页面 备注 登录和注册过程中系统会进行验证 初始显示第一页 初始显示第一页 查看相片 在相片列表中显示留言的内容 输入类的名称,显示添加的分类 添加文件页面 添加成功页面 5。2.1 注册用户 点击“我的相册”进入用户登录页面,在此页面上输入注册用户的昵称,密码,验证码后点击登陆按钮可以进入用户的相册列表页面。 点击相册名称就可以进入到相应的相册,可以通过点击查看评论,设为相册封面,修改,删除等按钮实现相应的功能。见图5—1到5—5 26 哈尔滨理工大学学士学位论文 1.相片上传测试 (1)如图5-1截图显示的是上传照片成功后的界面。 图 5—1 保存信息测试图 (2)如图5—2截图显示的是查看相片评论的界面. 图 5—2查看评论界面 2.修改相片信息测试 27 哈尔滨理工大学学士学位论文 图 5-3修改相片信息界面 如图5—3截图显示的是修改相片信息的界面.显示结果正确. 3.新建相册测试 如图5-4截图显示的是新建相册信息的界面 图5-4 新建相册界面 4.修改资料测试 如图5-5截图显示的是修改资料信息的界面,可以修改信息. 图5-5 修改资料界面 28 哈尔滨理工大学学士学位论文 5。2。2管理员 点击管理员登陆进入管理员登录页面,在此页面上输入管理员名称,密码,验证码后点击登陆按钮可以进入管理员页面.点击“添加文件”进入添加相册分类页面,在添加分类栏中输入分类名字,在管理分类中选择相应的项,点击提交即可。如图5—6所示. 图 5—6 管理员添加分类页面 如图5-6截图显示的是管理员添加相册分类成功后的界面. 5。3 本章小结 在本章中,详细地向读者讲述了如何使用Spring +Struts+Hibernate技术来构建了一个简单的电子相册系统。相信通过本章的学习,读者对Spring +Struts+Hibernate开发有了一定的认识.系统实现使整个系统由思想变为现实。系统实现主要体现在灵活多变,不拘泥于一种想法,要尽量使程序更加完善。在本章中,通过对各个模块的仔细测试,结果均正确。 29 哈尔滨理工大学学士学位论文 结论 在本次设计开发过程中,在代码的整体编排上性有一很大的提高,但是随之而来的,在可读性方面可能还有一些欠缺考虑的地方存在,对于其本系统的设计者来看,整体的架构可能还不太清晰,总体还是不够好,今后应该在实践中继续提高,在注释的书写方面也是有待加强,应着重重视这一方面文字的书写,这样更可以便于阅读,加快读程序者了解程序整体架构和思路,这也是日后要加强的部分.在管理员权限方面,由于设计的时间安排不够合理,管理员的功能没能够完全实现,比如管理员应该可以删除分类,但这次设计中没有完成此功能。 另一方面,在一说明书中一些图表的说明上有欠考虑,有些图表不能清晰的说明问题的全部,也就是说在整体的思路上还不太明确,对设计的划分上有些模糊的概念,不能很深层次上剖析设计的思想,只能在表层上阐述,让读者看起来有些摸不清整体的脉络,这也是在日后的学习中需要进一步思考的问题. 总之,由于个人的知识水平和经验的不足,本设计中可能存在很多的问题,我会在今后的学习中逐步加强。 30 哈尔滨理工大学学士学位论文 致谢 岁月如梭,我四年的大学时光也即将敲响结束的钟声。离别在即,站在人生的又一个转折点上,心中难免思绪万千,一种感恩之情油然而生。生我者父母.感谢生我养我,含辛茹苦的父母。是你们,为我的学习创造了条件;是你们,一如既往的站在我的身后默默的支持着我.没有你们就不会有我的今天。谢谢你们,我的父亲母亲! 在这四年中,老师的谆谆教导、同学的互帮互助使我在专业技术和为人处事方面都得到了很大的提高.感谢的是我学校的指导老师xxx老师,在校外实习期间,刘老师不厌其烦地给予我指导帮助,并且在很多方便为我提供了很大的便利条件,使我能够较好地平衡工作与毕设的时间问题,刘老师对我的论文进行了严格细致的指导,他严谨的工作作风也教育了我以后的工作要更加认真细致。其次要感谢校外的实习单位及其领导,因为他们的理解、帮助与支持,我才可以在实习阶段完成这次的设计任务,在此对他们表示深深的感谢。 总之,要感谢所有在我完成设计的过程中给予过我帮助的老师及同学,感谢他们的热情帮助和大力的支持,在此表达我最衷心的感谢。 31 哈尔滨理工大学学士学位论文 参考文献 1 李皎,李玲玲,王朔琛.基于 Java 的电子相册系统设计与实现[J].软 件导刊,2012: 69~71 2 Lanying.Method of System Transferring from Client/Serve to Browser/Server [J].Computer and Communications,2005:20~33 3 布鲁斯艾克尔(Bruce Eckel).Java编程思想(第四版).机械工业出版社, 2007:45~67 4 梁立新.项目实战精解基于Struts+Spring+Hibernate的Java应用开发.电 子工业出版社,2006:30~50 5 DuBois P.MySQL[M].Addison—Wesley Professional,2009:80~ 6 孙卫琴.精通struts基于mvc的java web设计与开发.电子工业出版社, 2006:60~ 7 夏昕,曹晓刚,唐勇.深入浅出Hibernate.电子工业出版社,2007:45~ 78 8 廖雪峰.Spring2.0 核心技术与最佳实践.电子工业出版,2007:20~28 9 庄成三,洪玫,杨秋.数据库系统原理及其应用[M].电子工业出版 社,2000:40~42 10 Lie H W,Saarela J.Multipurpose using CSS[J].Communications of the ACM,1999:95~101 11 Mayne P W,Kulhawy F H.K\\ do-OCR Relationships in Soil[J]。Journal of the Geotechnical Engineering Division,1982:851~872 12 刘斌。精通 Java Web 整合开发。电子工业出版社,2007:30~44 13 刘聪。零基础学Java Web开发.机械工业出版社,2009:25~37 14 孙卫琴.Java 面向对象编程.工业出版社,2009:30~36 32 哈尔滨理工大学学士学位论文 15 Rapps S,Weyuker E J. Selecting software test data using data flow information[J].Software Engineering ,1985:367~375 附录 AddAlbumAction。java public class AddAlbumAction extends Action { private ClientService cs; public void setCs(ClientService cs) { } /** * ActionMapping就是用来描述一个Action的URL、具体实现的文件、 this.cs = cs; 相对应的ActionForm数据属性(request or session)、是否需要进行数据校验和回写、以及处理完成后可能跳转的URL.而ActionForward你就可以理解为Action 操作完成后的跳转URL,Action在处理完相关操作后返回的是一个ActionForward也就是告诉Struts我做完这个操作下一步到哪儿去. */ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception 33 哈尔滨理工大学学士学位论文 { DynaActionForm addAlbumForm = (DynaActionForm)form; String name = (String)addAlbumForm.get(”name”); Integer kindId = Integer。valueOf((String)addAlbumForm。get (”kind”)); String desc = (String)addAlbumForm.get(\"desc”); ClientVO cvo = (ClientVO)request。getSession ().getAttribute(\"clientInfo”); Integer cId = new Integer(cvo.getId()); cs。addAlbum(name, desc, DateUtil.getFormalTime(), 0, cId, kindId); } AlbumDaoImpl.java public class AlbumDaoImpl extends HibernateDaoSupport implements AlbumDao { public Album get(Integer id) { } public void save(Album album) { getHibernateTemplate().save(album); 34 } return mapping。findForward(\"success\"); return (Album)getHibernateTemplate().get(Album。class, id); 哈尔滨理工大学学士学位论文 } public void update(Album album) { } public void delete(int id) { getHibernateTemplate()。delete(getHibernateTemplate()。get(Album。getHibernateTemplate().update(album); class, new Integer(id))); } public void delete(Album album) { } public List getAllByClient(final Client client, final int first, final int getHibernateTemplate()。delete(album); pageSize) { List result = (List)getHibernateTemplate()。execute( new HibernateCallback() { Public Object doInHibernate ( Session sess)throws HibernateException { List tmp = sess。createQuery(\"from Album as al where al。 client = :client”) .setEntity(\"client”, client) 35 哈尔滨理工大学学士学位论文 } } 。setFirstResult(first) .setMaxResults(pageSize) 。list(); return tmp; }); return result; public List getAllByClient(final Client client) { List result = (List)getHibernateTemplate().execute( new HibernateCallback() { public { List tmp = sess.createQuery(”from Album as al where al。client Object doInHibernate(Session sess)throws HibernateException = :client”) } //获取该用户相册数量 36 } 。setEntity(”client\ 。list(); return tmp; }); return result; 哈尔滨理工大学学士学位论文 public int getAmount(Client client) { Client[] args = {client}; List result = getHibernateTemplate()。find(”from Album as al where al。 client = ?”, args); } AdminServiceImpl.java public class AdminServiceImpl implements AdminService { private AdminDao ad; private KindDao kd; public void setAd(AdminDao ad) { } public void setKd(KindDao kd) { } public AdminVO checkAdmin(String name, String pass)throws this。kd = kd; this。ad = ad; } return result。size(); MyException { try 37 哈尔滨理工大学学士学位论文 } { } catch (Exception e) { } e。printStackTrace(); throw new MyException(\"登录异常”); Integer adminId = ad。findByNameAndPass(name, pass); Admin admin = ad。get(adminId); if (admin == null) { } return fillAdminVO(admin); return null; public void addKind(String kindName, String desc)throws MyException { try { } catch (Exception e) { e。printStackTrace(); throw new MyException(\"添加种类异常\"); 38 Kind kind = new Kind(kindName, desc); kd。save(kind); 哈尔滨理工大学学士学位论文 } } public void updateKind(Integer kindId, String name)throws MyException { } private AdminVO fillAdminVO(Admin admin)throws Exception { AdminVO avo = new AdminVO(admin。getId(), admin。getNametry { } catch (Exception e) { } e.printStackTrace(); throw new MyException(\"修改种类信息异常\"); Kind kind = kd.get(kindId); kind.setName(name); kd.save(kind); ()); } } return avo; 39
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务