JavaWeb宠物店课程设计报告Word格式.docx

上传人:b****6 文档编号:21965028 上传时间:2023-02-02 格式:DOCX 页数:23 大小:464.70KB
下载 相关 举报
JavaWeb宠物店课程设计报告Word格式.docx_第1页
第1页 / 共23页
JavaWeb宠物店课程设计报告Word格式.docx_第2页
第2页 / 共23页
JavaWeb宠物店课程设计报告Word格式.docx_第3页
第3页 / 共23页
JavaWeb宠物店课程设计报告Word格式.docx_第4页
第4页 / 共23页
JavaWeb宠物店课程设计报告Word格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

JavaWeb宠物店课程设计报告Word格式.docx

《JavaWeb宠物店课程设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《JavaWeb宠物店课程设计报告Word格式.docx(23页珍藏版)》请在冰豆网上搜索。

JavaWeb宠物店课程设计报告Word格式.docx

●Mysql数据库,用于网站系统文件表格的建立、更改、维护等;

●MyEclipse,用于编写、调试系统代码、生成发布。

二、系统设计

2.1宠物管理系统功能设计目标:

(1)实用性强:

我们努力使系统符合实际操作流程的习惯,并尽量减少用户的输入,易学易用的友好的用户界面,满足各层次的用户使用的需求;

(2)先进的程序结构:

使用当代前卫的软件编程,能延长其生命周期,易于维护与管理;

(3)安全可靠性高:

后台维护功能齐全,根据平台在各个阶段不同的使用情况,管理人员可以设置相应的操作权限,增加系统注册,分配各个栏目的管理权限,实现系统的维护,保证系统的安全、可靠;

(4)使用模块化设计的方法:

使系统具有良好的可扩充性,以适应其不同阶段的发展需要,便于后来者分析、维护;

(5)操作简单,维护方便:

每个子系统都具有相对独立的系统维护功能

对可变化的项目可自行维护;

(6)查询功能强大:

可以对宠物的基本情况、用户基本情况,宠物主人信息,用户留言等按各种方式查询,可形成各种表单,同时还可对其进行汇总,使管理人员能及时准确地掌握用户和其宠物的基本情况。

2.2宠物管理系统的总体设计:

本宠物商店管理系统是基于B/S架构下的多层结构应用系统。

B/S(Browser/Server)结构即浏览器和服务器结构。

它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。

这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。

2.3系统详细功能设计以及总体结构图:

通过详细调查现实世界要处理的对象,充分了解系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。

新系统必须充分考虑今后可能的扩充和改变。

系统总体结构图:

系统实现的功能:

●宠物类别管理

Ø

宠物类别查询

宠物类别修改

宠物类别删除

新增宠物类别

●宠物信息管理

宠物大小类别,是否有伤人危险

宠物是否注册疫苗,何时,何地

宠物有监管人或流浪或被社区收容

宠物的其他信息以及备注

宠物查询

宠物修改

宠物删除

新增宠物

●宠物监管人管理

宠物监管人性别年龄

宠物监管人与宠物关系

宠物监管人工作及工作住址

宠物监管人联系方式等

宠物监管人查询

宠物监管人添加

宠物监管人信息修改

宠物监管人删除

●用户评论管理

评论内容管理

用户评论查询

●用户登录管理

用户注册

用户登录

用户密码修改

●相关文档管理

文档信息查看

文档信息添加

文档信息删除

●个人信息管理

管理员密码更改

退出系统

2.4数据库结构设计:

本系统分为4大模块,用户管理模块,宠物管理模块,文档管理模块以及留言板管理模块,其中宠物管理模块又分为宠物信息管理,宠物类别,宠物监管人信息管理。

注册用户以及管理员分别对数据管理拥有自己的权限。

图4-2:

整体框架E-R图

系统ER图

2.5系统的用例图

2.5.1总体用例分析

总体用例图

如图,用户管理、宠物,宠物类别及宠物监管人管理、留言板管理、文档管理四个模块构成了本宠物管理系统。

User是指系统用户,包括普通注册用户和管理员两种,普通注册用户只可以查看各种信息,以及添加与自己有关的信息,管理员才可以添加,查看,删除,修改各种信息。

2.5.2用户管理用例分析

用户管理用例图

如图,用户管理模块主要包括:

用户登陆、用户注册、用户信息修改、用户删除、用户信息查询五个功能组成。

2.5.3宠物,宠物类别及宠物监管人管理

信息管理用例图

如图,宠物,宠物类别,宠物监管人信息管理模块主要包括:

宠物信息管理,宠物类别管理,宠物监管人信息管理三个功能模块组成。

2.5.4留言板管理

留言板管理用例图

如图,留言板管理模块主要包括:

留言板列表,留言板内容两个个内容组成。

2.5.5文档管理

文档管理用例图

文档管理模块主要包括:

文章列表、文章内容两个内容组成。

2.6系统出错处理设计:

(1)用户输入账号跟密码错误,需要在登录框提示“信息错误,请重新填写!

”。

(2)用户注册账户时用了跟别人一样的账户名,需要在注册页面提示“用户名已存在!

(3)用户在提交注册信息时,有姓名账号密码等未填写时,需要弹出提示框:

“未填写的内容不能为空!

(4)用户在添加宠物有的时候,如果有未填写或为选择的状况,需要在该页面弹出提示框“未填写的内容不能为空!

三、宠物管理系统的实现

3.1宠物管理系统数据库的实现

Hibernate可以通过一个XML的mapping文件把一个POJO(Plainoldjavaobject)和数据库中的表对应起来,在这个XML文件(一般命名为*.hbm.xml)中,配置好Object和数据库中表的映射关系,然后把这个mapping加入到hibernate.cfg.xml中,这样Hibernate在启动时就可以加载这些mapping,并可以根据配置文件对对象实现自动的加载,并且可以对这些Object自动的维护。

Session工厂的配置信息:

applicationContext-bean.xml

<

?

xmlversion="

1.0"

encoding="

UTF-8"

>

!

--

-Middletierapplicationcontextdefinitionfortheimagedatabase.

-->

beansxmlns="

http:

//www.springframework.org/schema/beans"

xmlns:

xsi="

//www.w3.org/2001/XMLSchema-instance"

aop="

//www.springframework.org/schema/aop"

context="

//www.springframework.org/schema/context"

tx="

//www.springframework.org/schema/tx"

xsi:

schemaLocation="

//www.springframework.org/schema/beanshttp:

//www.springframework.org/schema/beans/spring-beans-2.5.xsd

//www.springframework.org/schema/aophttp:

//www.springframework.org/schema/aop/spring-aop-2.5.xsd

//www.springframework.org/schema/contexthttp:

//www.springframework.org/schema/context/spring-context-2.5.xsd

//www.springframework.org/schema/txhttp:

//www.springframework.org/schema/tx/spring-tx-2.5.xsd"

<

--抽象bean,是所有bean的父bean-->

<

beanid="

beanAbstract"

abstract="

true"

<

propertyname="

sessionFactory"

ref="

/property>

/bean>

--bean-->

loginServices"

class="

com.oa.services.impl.LoginServicesImpl"

parent="

/>

typeServices"

com.oa.services.impl.TypeServicesImpl"

messageServices"

com.oa.services.impl.MessageServicesImpl"

petServices"

com.oa.services.impl.PetServicesImpl"

ownerServices"

com.oa.services.impl.OwnerServicesImpl"

textServices"

com.oa.services.impl.TextServicesImpl"

adminServices"

com.oa.services.impl.AdminServicesImpl"

/beans>

以上代码是applicationContext-bean.xml文件中Session工厂的配置信息

宠物信息数据库表:

如表所示,这是宠物信息的表,id是系统自动生成,其余的分别为宠物姓名,宠物类型,简介,添加该宠物的用户id,图片,年龄是否疫苗,疫苗时间,疫苗地点,是否领养,是否伤人等宠物信息。

接下来会对它如何连接到工程以及如何实现该功能做详细介绍。

其中图片在petaction中默认由本地,上传到服务器上的upload文件夹中,以便游客浏览以及管理员管理,id为系统自动+1生成,userid与user列表中的userid一致,typename与t_type列表中的typename一致,需要t_type预添加。

3.3宠物管理系统功能说明

根据对宠物管理系统业务流程的分析,用户登录后要能自己添加自己的宠物信息,包括宠物的姓名,年龄,宠物的id,上传图片,是否疫苗,疫苗事件,疫苗地点,是否领养以及是否伤人等信息。

用户登录后可以浏览别的用户的宠物信息,而管理员可以对用户前台添加的信息进行修改与删除。

3.4主要的宠物信息管理的实现

3.4.1DAO层的实现

数据访问层,又称DAO层,在该层主要完成对象-关系映射的建立,通过这个映射,再通过访问业务对象即可实现对数据库的访问,使得开发中不必再用SQL语句编写复杂的数据库访问程序,这样就简化了对数据库的访问,提高了开发效率。

同时通过对象-关系映射的配置,可以建立业务对象之间的复杂关系,如一对多、多对一、一对一、多对多等关系。

这样就不再需要在数据库中建立表之间的复杂联系,使得业务对象之间的关系和数据库相分离,简化了数据库的建立和维护。

在这一层中主要使用Hibernate框架来实现。

Tpet以及Tpet.hbm.xml为hibernate自动生成文件,用于连接数据库。

3.4.2Service层的实现

Service为业务逻辑层,主要业务逻辑包括这些类分别实现了相应的接口,这些类在工作的过程中还需要依赖相应的DAO对象和JavaBean对象。

实际操作时,在Action中通过Service对DAO接口进行调用,使整个系统有良好的层次。

比如这边Petservices调用TPet,而PetserviceImpl继承Petservices,进行查询、添加、修改和删除操作。

Petservices代码:

importcom.oa.models.TPet;

importcom.oa.utils.PageInfo;

publicinterfacePetServices{

//查询

publicPageInfoqueryPet(intcurrentpage,intpageunit,

HttpServletRequestrequest,Stringurl,Stringcond);

//添加

publicBooleanaddPet(TPetpet);

//修改

publicBooleanupdatePet(TPetpet);

//ID查询

publicTPetgetPet(Integerid);

//删除

publicTPetdelPet(Integerid);

}

PetserviceImpl主要代码:

publicclassPetServicesImplextendsAbstractServicesimplementsPetServices{

//查询

HttpServletRequestrequest,Stringurl,Stringcond){

introwCount=this.getPetsCount(cond);

List<

TPet>

list=this.getPets(currentpage,

pageunit,cond);

PageInfoPageInfo=newPageInfo(currentpage,pageunit,rowCount,url,

list);

returnPageInfo;

}

//获得

publicList<

getPets(intcurrentpage,intpageunit,

Stringcond){

try{

Stringhql="

fromTPetawhere1=1"

+cond;

returnthis.query(hql,currentpage,pageunit);

}catch(Exceptione){

e.printStackTrace();

}

returnnull;

//添加

publicBooleanaddPet(TPetpet){

save(pet);

returntrue;

以上为查询以及添加的代码,其余删除修改略。

3.4.3Action层的实现

Action用于处理视图层与业务层之间的衔接,当页面产生一个动作请求时候,通过Struts配置文件找到对应的Action中的接口,经过Action处理后返回结果并从Struts的配置文件中找到对应的跳转页面。

查询代码:

publicStringqueryPet()throwsException{

if(getSessionAttribute("

querypageunit"

)==null){

setSessionAttribute("

this.pageunit);

StringBuffercond=newStringBuffer();

if(null!

=searchname&

&

"

=searchname.trim()){

cond.append("

anda.petnamelike'

%"

+searchname.trim()+"

%'

"

);

intcurpage=Integer.parseInt(this.getCurrentpage(ServletActionContext.getRequest()));

intpageunit=Integer.parseInt(this.getPageunit(ServletActionContext.getRequest(),"

));

Stringurl="

pet_queryPet?

a=a"

;

PageInfopageInfo=this.petServices.queryPet(curpage,

pageunit,ServletActionContext.getRequest(),url,cond.toString());

setRequestAttribute("

pageinfo"

pageInfo);

searchname"

this.searchname);

return"

queryPet"

预添加以及添加代码:

publicStringpreaddPet()throwsException{

TType>

list=typeServices.queryType();

list"

list);

preaddPet"

publicStringaddPet()throwsException{

TUseruser=(TUser)getSessionAttribute("

user"

TPetpet=newTPet();

pet.setAge(age);

pet.setIsbiter(isbiter);

pet.setIsuser(isuser);

pet.setPetname(petname);

pet.setRemark(remark);

pet.setTypename(typename);

pet.setUserid(user.getUsername());

pet.setVacadrr(vacadrr);

pet.setVaccin(vaccin);

pet.setVacdate(vacdate);

//将图片上传到工程下的upload文件夹中

StringtargetDirectory=ServletActionContext.getRequest()

.getRealPath("

/upload"

StringtargetFileName=generateFileName(pictureFileName);

Filetarget=newFile(targetDirectory,targetFileName);

FileUtils.copyFile(picture,target);

pet.setPicture(targetFileName);

petServices.addPet(pet);

addPet"

预添加将后台管理员添加的宠物类型添加到宠物信息,添加功能中有图片上传。

查看代码:

publicStringviewPet()throwsException{

TPetpet=petServices.getPet(id);

pet"

pet);

viewPet"

其余修改删除代码等省略。

struts中宠物管理功能的实现:

actionname="

pet_*"

petAction"

method="

{1}"

resultname="

/files/pet/list.jsp<

/result>

type="

redirectAction"

pet_queryPet<

delPet"

updatePet"

/files/pet/add.jsp<

preupdatePet"

/files/pet/update.jsp<

/files/pet/view.jsp<

/action>

3.4.4静态Jps页面的实现表现层

其余静态页面运用css模块统一风格,其中pet功能页面代码均在files/pet/文件夹中,添加宠物信息为add.jsp,查看宠物信息为view.jsp,查看宠物列表为list.jsp,修改宠物信息为update.jsp,由struts控制跳转,代码略。

结合Struts的表现层标签,JSP可完成全部的表现层功能一一数据收集、数据表示和客户端数据校验

四、实现效果

主界面,要求具有分类展现功

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 图表模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1