宠物管理系统_第1页
宠物管理系统_第2页
宠物管理系统_第3页
宠物管理系统_第4页
宠物管理系统_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目案例:宠物商店第十一章训练的技能点面向对象程序设计的思想使用类图设计系统使用Java集合存储和传输数据Java异常处理使用JDBC操作数据库使用SQLServer存储数据DAO层的应用2/39任务描述系统概述在宠物商店里,宠物主人可以出卖、购买宠物每一笔买入、卖出的业务,店家都会记录在账商店可以根据需求自己培育宠物品种系统角色宠物、主人、宠物商店、账目提交结果创建数据库表的脚本文件、系统类图、程序代码演示案例:宠物商店3/39问题分析1:整体开发思路系统开发步骤明确需求设计数据库设计技术框架Java技术数据访问层编码顺序测试系统启动登录功能宠物主人操作宠物商店操作12344/39问题分析2:界面交互设计界面交互设计的原则统一性原则界面风格统一用相同方式展现相同类型的数据,如:日期类型交互风格统一用相同方式完成相同类型的操作,如:录入日期美观性原则界面美观大方易用性原则操作方式自然、易理解5/39难点分析1:设计数据库表结构根据业务确定表的名称根据业务确定表的具体字段如何区分一个宠物是否被卖出如何区分一个宠物是库存还是新培育的如何定义一个宠物的所属商店如何确定一个宠物是属于哪个主人的注意主键和外键的设计,建立表之间关联关系6/39难点分析2:使用类图设计系统采用DAO模式设计和开发本项目案例设计步骤第一步:根据数据库表创建实体类第二步:创建DAO接口和实现类第三步:创建业务接口和实现类第四步:优化业务接口设计第五步:根据分析结果,给出伪代码,完成设计7/39项目准备:设计并创建数据库表2-1数据库表宠物表pet宠物主人表petowner

宠物商店表petstore

账目表account具体字段根据业务进行确定注意主键和外键的设计,建立表之间关联关系8/39字段名字段类型长度备注IDint宠物idNAMEnchar50宠物名TYPENAMEnchar20宠物类型HEALTHint是否健康LOVE int爱心指数BIRTHDAYdate 出生日期OWNER_IDint宠物主人idSTORE_IDint宠物所属商店id项目准备:设计并创建数据库表2-2字段名字段类型长度备注IDint宠物主人idNAMEnchar10宠物主人名PASSWORDnchar10宠物主人密码MONEYint宠物主人元宝字段名字段类型长度备注IDint宠物商店idNAMEnchar20宠物商店名字PASSWORDnchar20宠物商店密码BALANCEint宠物商店结余字段名字段类型长度备注IDint账单idDEAL_TYPEint交易类型,1:商店卖给宠物主人2:宠物主人卖给商店PET_IDint宠物idSELLER_IDint买家idBUYER_IDint卖家idPRICEint交易价格DEAL_TIMEdate交易时间宠物表宠物主人表宠物商店表账目表9/39项目准备:完成接口设计5-1第一步:根据数据库表创建实体类实体类一般和数据库表对应,实体类的属性对应于表的字段为四个数据库表分别创建实体类,实现数据库数据在各个层次的传输四个实体类的名称可以定义为Pet、PetOwner、PetStore、Account10/39项目准备:完成接口设计5-2第二步:创建DAO接口和实现类采用面向接口编程的思想设计数据访问层,定义DAO接口和实现类为四个数据库表分别创建DAO接口和实现类为了重用建立和关闭数据库的代码,创建BaseDao作为四个实现类的父类11/39项目准备:完成接口设计5-3第三步:创建业务接口和实现类从业务角度考虑,主要是宠物主人和宠物商店业务创建宠物主人和宠物商店业务接口及实现类在业务实现类中调用DAO接口实现相应业务12/39项目准备:完成接口设计5-4第四步:优化业务接口设计按照“单一职能原则”对业务接口定义进行优化抽取出Buyable、Sellable、Breedable、Accountable等接口PetOwnerService、PetStoreService接口根据自身功能继承其中的一个或多个接口13/39项目准备:完成接口设计5-5第五步:根据分析结果给出伪代码,完成设计给出实体类伪代码给出DAO接口和实现类伪代码给出业务接口和实现类伪代码14/39开发计划用例1:系统启动[35分钟]用例2:宠物主人登录[15分钟]用例3:宠物主人购买库存宠物[35分钟]用例4:宠物主人购买新培育宠物[15分钟]用例5:宠物主人卖出宠物给商店[30分钟]15/39用例1:系统启动3-1需求说明在系统启动时,显示所有的宠物信息、宠物主人信息、宠物商店信息系统启动后,提示选择登录模式指导讲解需求说明16/39用例1:系统启动3-2DAO代码PetDao:getAllPet()查询所有宠物信息PetOwnerDao:getAllOwner()查询所有宠物主人信息PetStoreDao:getAllStore()查询所有宠物商店信息测试类startPetShop():获取相关信息并输出,提示选择登录模式main():调用startPetShop(),启动程序使用JDBC访问SQLServer数据库获取相关信息并遍历输出完成时间:35分钟提示分析17/39共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解18/39用例1:系统启动3-3正确显示所有宠物信息正确显示所有主人和商店信息提示选择登录模式要求互相验证完成的程序功能小组长检查本组完成情况功能测试演示案例:系统启动19/39用例2:宠物主人登录3-1需求说明输入用户名和密码,判断登录是否成功如果成功,输出主人基本信息并提示选择相应操作如果登录失败,提示确认用户名和密码后重新输入指导讲解需求说明20/39用例2:宠物主人登录3-2DAO代码PetOwnerDao:selectOwner()根据查询条件查询宠物主人信息Service代码PetOwnerService:login()宠物主人登录测试类ownerLogin():宠物主人登录startPetShop():如果选择主人登录,调用ownerLogin()main():调用startPetShop(),启动程序完成时间:15分钟分析21/39共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解22/39用例2:宠物主人登录3-3宠物主人登录成功宠物主人登录失败要求互相验证完成的程序功能小组长检查本组完成情况功能测试演示案例:宠物主人登录23/39用例3:宠物主人购买库存宠物3-1需求说明主人成功登录后,可选择购买库存宠物显示所有库存宠物列表供主人选择输入宠物编号完成购买购买成功将显示提示信息指导讲解需求说明24/39用例3:宠物主人购买库存宠物3-2DAO代码Service代码查询所有库存宠物根据主人选择实现购买测试类ownerBuy():宠物主人购买宠物ownerLogin():如果主人购买宠物,调用ownerBuy()根据主人选择实现购买更新宠物信息:指定ownerid更新宠物主人信息:减少元宝数更新宠物商店信息:增加元宝数更新账目信息:添加新账目完成时间:35分钟分析提示25/39共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解26/39用例3:宠物主人购买库存宠物3-3显示所有库存宠物根据主人选择实现购买要求互相验证完成的程序功能小组长检查本组完成情况功能测试演示案例:宠物主人购买库存宠物27/39用例4:宠物主人购买新培育宠物3-1需求说明主人成功登录后,可选择购买新培育宠物显示所有新培育宠物列表供主人选择输入宠物编号完成购买购买成功将显示提示信息指导讲解需求说明28/39用例4:宠物主人购买新培育宠物3-2实现步骤与购买库存宠物相同购买库存宠物和新培育宠物属于两种不同的业务,在业务接口和实现类中应该定义不同的方法重用数据访问层代码完成时间:15分钟分析29/39共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解30/39用例4:宠物主人购买新培育宠物3-3显示所有新培育宠物根据主人选择实现购买要求互相验证完成的程序功能小组长检查本组完成情况功能测试演示案例:宠物主人购买新培育宠物31/39用例5:宠物主人卖出宠物给商店3-1DAO代码Service代码获得指定ID的宠物主人的所有宠物信息宠物主人向宠物商店卖出自己宠物测试类ownerSell():宠物主人卖出宠物ownerLogin():如果主人卖出宠物,调用ownerSell()根据主人选择实现购买更新宠物信息:删除ownerid更新宠物主人信息:增加元宝数更新宠物商店信息:减少元宝数更新账目信息:添加新账目完成时间:30分钟分析提示32/39共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解33/39用例5:宠物主人卖出宠物给商店3-2显示主人的宠物列表、所有宠物商店列表完成卖出交易,显示成功信息要求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论