基于JSP小型超市管理系统.docx

上传人:b****5 文档编号:4047288 上传时间:2022-11-27 格式:DOCX 页数:30 大小:304.53KB
下载 相关 举报
基于JSP小型超市管理系统.docx_第1页
第1页 / 共30页
基于JSP小型超市管理系统.docx_第2页
第2页 / 共30页
基于JSP小型超市管理系统.docx_第3页
第3页 / 共30页
基于JSP小型超市管理系统.docx_第4页
第4页 / 共30页
基于JSP小型超市管理系统.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

基于JSP小型超市管理系统.docx

《基于JSP小型超市管理系统.docx》由会员分享,可在线阅读,更多相关《基于JSP小型超市管理系统.docx(30页珍藏版)》请在冰豆网上搜索。

基于JSP小型超市管理系统.docx

基于JSP小型超市管理系统

课程设计报告

 

课程名称基于J2的项目开发

设计题目超市管理系统

专业班级软件1231

姓名刘香弟

学号1204311106

 

成绩评定

考核

内容

设计

表现

设计

报告

答辩

综合评

定成绩

成绩

 

计算机技术与工程学院

和谐勤奋求是创新

 

1题目选择与系统分析3

1.1项目的功能分析3

1.1.1顾客功能性需求3

1.1.2管理员功能性需求4

2模块设计5

2.1系统总体设计5

2.2模块设计5

2.2.1登录模块7

2.2.2商品信息查看模块8

2.3.3购物车模块8

3数据库的数据表设计与映射9

3.1数据库表设计9

4系统详细设计与实现11

4.1综合描述11

4.2系统运行界面描述12

4.3主要的类和其功能25

4.4系统测试27

4.4.1测试的目标与方法27

4.4.2测试用例27

1题目选择与系统分析

1.1项目的功能分析

功能性需求是整个需求分析章节最为重要的部分。

它直接决定了系统的模块划分,业务逻辑,明确了使用者对小型超市信息管理系统功能的要求。

一个完善的,明确的,详细的功能性需求分析是开发一个系统的关键。

成功的功能性需求分析可以避免后期对系统的大范围改动甚至是推倒重建,因此,本部分极为重要。

1.1.1顾客功能性需求

1>不用输入用户名,密码,直接登录超市管理系统的商品页面;

2>查看商品的基本信息,包括商品编号,单价,余量,厂家,生产日期,保质期;

3>在购物车中查看自己选中的商品名称,价格,数量,并可以从购物车中移除某些商品,查看总价,并可以选择结账或选择继续购物;

4>点击结账后显示结账成功并退出系统。

相关用例图见图1-1。

图1-1顾客用例图

顾客用例“查看商品基本信息”的用例描述见表1-1。

其他用例类似于此,不再一一赘述。

表1-1用例描述-查看商品基本信息

使用者

顾客

用例

查看商品基本信息

参与者

顾客,小型超市信息管理系统

数据

顾客向超市信息管理系统发送商品相关信息,如商品名,商品类型,商品编号等

激励

超市信息管理系统根据用户发送的字段,查询后台数据库

响应

超市信息管理系统返回查询商品结果

备注

1.1.2管理员功能性需求

1>打开网站后,进入登录页面。

输入用户名,密码登录系统。

2>登陆后,选择进入系统人员管理页面或者商品信息管理页面。

在系统人员管理页面中,查看其它管理员的信息,并可以添加新的管理员。

在商品信息管理页面,可以查看全部商品的信息,包括商品编号,进价,单价,余量,厂家,生产日期,保质期。

3>进入商品信息管理页面的进货管理页面,可以填写进货单,实现相关产品数量的增加。

4>进入商品信息管理页面的销售查看页面,可以查看近期各项商品的销售情况。

5>点击页面右上角的退出按钮,直接退出系统并跳转到登录页面。

相关用例图见图1-2管理员功能性需求用例图。

图1-2管理员功能性需求用例

2模块设计

2.1系统总体设计

系统总体设计图如图4-1所示。

当使用人员登录系统后,按身份的不同进入各自的页面,并使用系统提供的功能。

管理员的人员信息管理属于操作者所有,在此本系统默认管理员可以操作其他管理员的信息。

图2-1系统总体设计图

2.2模块设计

本处将对小型超市信息管理系统进行分模块设计,明确各个模块的操作流程,功能如何使用等问题。

1>登录模块

超市信息管理系统的使用者主要有两种:

普通的顾客和管理员。

按照日常生活中超市的运作流程,普通顾客不需要为其设立专门的数据表,所以只需要实现管理员的登录模块。

使用者进入系统后,首先进入欢迎界面。

普通顾客点击“开始购物旅程”超链接,直接进入购物界面。

管理员点击“进入后台系统”超链接,进入管理员登陆界面。

由于管理员对系统有操作,查看等权限,因此不允许在登陆页面注册新的管理员。

登陆成功后跳转至管理员管理页面,否则显示“”登陆失败。

当输入正确的姓名,密码后,界面自动跳转到管理员管理欢迎界面。

2>商品信息管理模块

管理员进入后台管理界面后,点击“商品信息管理页面”超链接,进入商品信息管理页面。

页面查询后台数据库数据,将所有商品信息展示在右侧页面上。

若管理员需要对相关商品信息作出修改,或者删除某项商品信息。

则点击相应的超链接进行操作。

删除成功后系统会提示“删除成功”。

点击“更新”,系统会进入商品信息更新页面。

在页面中,已经预先填好了所选商品信息。

这允许管理员仅对需要修改的字段内容修改,避免了全盘输入的麻烦。

若管理员需要添加新商品,则点击“添加新商品”链接。

系统跳转到商品信息添加页面。

在此页面填入相应的商品信息,点击“添加”按钮。

若各个字段的值都符合要求,则系统提示“添加成功”。

再点击左侧“商品信息管理页面”,则可以看到刚才插入的商品信息。

3>进货单管理模块

进货是超市正常运营,及时跟进市场最新动态,调整售货方向的最重要的手段。

进货单管理模块用来实现进货功能,管理员可以填写进货单实现对商品表及进货单表的更新。

在管理员管理欢迎界面点击“进货单管理页面”,系统跳转到进货单管理页面。

由于进货操作是管理员对超市经营情况收集信息的重要途径,因此不允许对进货单进行修改操作,以便进行对账,合计等操作。

点击“增加进货单”链接,系统跳转至进货信息添加页面。

在进货信息添加页面中,当管理员填写好相应的字段后,点击“添加”按钮。

系统在后台会自动查找填入的商品名。

如果以前存在同名的商品,则在原来的商品的基础上,对数量作出修改。

如果查不到填入的商品名,则在商品表中新建一条记录。

最后,在进货单表中生成相应的进货记录。

4>管理员信息管理模块

在管理员管理欢迎界面,点击“管理员信息管理页面”。

系统跳转至管理员信息管理界面。

在此界面上,可以实现对管理员信息的增删改,在此不再一一赘述。

5>交易信息查看模块

顾客每次在超市的消费都会有相应的记录。

由于小型超市规模的限制,不可能大量保存每笔交易的详细信息,因此系统以交易流水号的形式表示每笔交易。

此模块就是供管理员查看交易信息的记录。

由于交易信息是对超市中已存在的交易行为的记录,因此不允许管理员对交易信息进行修改,只能在记录较多时删除某条记录。

6>退出模块

管理员在左侧菜单点击“退出”链接,进入“确认退出页面”。

7> 购物模块

在开始页面点击“开始购物旅程”链接,跳转到购物页面。

点击一项商品后的添加至购物车链接,会提示添加成功,并选择查看购物车或继续购物。

点击“查看购物车”进入购物车管理页面。

可以实现对购物车中商品数量的修改,查看目前已购买商品的价格总计,或者选择删除购物车中的某项商品,甚至清空购物车。

点击“结账”链接,系统在新页面中会生成一个交易流水号,继续点击“结账”,如果后台保存成功,则提示交易完成,点击链接离开。

2.2.1登录模块

登录流程如图2-3。

管理员在登录表单填写用户名,密码,将表单与标志提交至。

系统根据文件的配置,调用相关的类()。

根据的值,调用相应的函数,查询数据库表()并进行判断,如果用户名与密码匹配,则跳转到管理页面(),否则,输出登录失败页面。

图2-2登录模块流程图

2.2.2商品信息查看模块

在中点击“商品信息管理页面”,链接为”1”。

系统根据配置文件,调用。

接受到1,调用()方法,查询数据库中表,查询所有商品信息,返回一个<>集合,名为。

利用("",)将集合存入范围内,然后跳转至商品信息展示页面()。

在商品信息展示页面,创建一个.列名分别为商品各项属性名。

新建一个<>.。

将范围内的“”接收并进行强制类型转换。

循环,将商品输出。

在每一行商品的后面,加上“删除”“更新”两个链接,分别为:

“2<(i)()%>”,“5<(i)()%>”。

点击链接,可以调用中的相应函数,传递参数为,进行删除或更新的操作。

相关流程见图2-3。

图2-3商品信息查看模块流程图

2.3.3购物车模块

添加商品至购物车时,会对购物车中的商品进行校验,若商品已在购物车中,则不在购物车中添加新项目,而是只修改商品数量。

顾客可以在购物车中编辑商品信息,包括修改商品数量,删除某些不想要的商品,或者清空购物车。

每点击相关链接就调用的对应函数对中的进行操作。

如果点击“结账”,则进入生成流水号页面。

结账成功后,则对数据库中的商品余量进行修改,自动减去顾客购买的商品数量。

购物车流程图如图5-11所示。

图5-11购物车模块流程图

3数据库的数据表设计与映射

3.1数据库表设计

商品基本信息表见表3-1。

表3-1商品基本信息表

名称

含义

类型

约束

备注

商品

20

主键

自动增长

商品名称

10

唯一值

商品类型

20

不为空

单价

10

不为空

进价

10

不为空

商品数量

10

不为空

进货日期

不为空

保质期

10

不为空

单位为(天)

生产厂家

50

不为空

员工信息表见表3-2。

表3-2员工信息表

名称

含义

类型

约束

备注

员工

20

主键

自动增长

员工姓名

10

不为空

员工密码

6

不为空

员工性别

1

不为空

1:

男2:

员工年龄

10

可为空

进货单表见表3-3。

表3-3进货单表

名称

含义

类型

约束

备注

进货单

50

主键

自动增长

商品

20

不为空

商品名称

10

唯一值

商品类型

20

不为空

单价

10

不为空

进价

10

不为空

商品数量

10

不为空

进货日期

不为空

保质期

10

不为空

单位为(天)

生产厂家

50

不为空

订单表见表3-4。

表3-4订单表

名称

含义

类型

约束

备注

订单

20

主键

自动增长

商品

20

不为空

交易流水号

50

外键参照表

不为空

购买商品数量

10

不为空

交易单表见表3-5。

表3-5交易单表

名称

含义

类型

约束

备注

交易单

20

主键

自动增长

交易日期

不为空

交易流水号

50

不为空

4系统详细设计与实现

4.1综合描述

由于小型超市信息管理系统结构比较简单,相对大型的,成熟的超市采用的管理系统来说,无论在系统的性能,结构复杂度,安全性上面都无法与之相比。

因此在进行系统设计时,应尽量做到结构清晰,编码方式合理,代码与系统的可维护性较高。

在本章节中,选取小型超市信息管理系统关键模块进行设计阐述。

主要模块有登录模块,商品信息查看模块,购物车模块三部分。

有关本系统的文件结构如下:

4.2系统运行界面描述

此处为小型超市信息管理系统关键模块的详细描述,并附上相关代码以及截图。

在代码的关键处加以说明,以方便读者阅读。

相关代码如下:

:

<""".*""8"%>

<"""c"%>

<%

=();

=()+""

+()+":

"+()

++"/";

%>

<"34.01">

<>

<>

<"<>">

<>''<>

<"""">

<"""">

<"""0">

<"""123">

<"""">

<

<"""""">

>

<""""""/>

<"">

<将表单中的数据清空>

(){

()="";

}

<>

<>

<"">

<"">

<""><>

<"">

<"""">

<>

<>

用户名:

<>

<>

<"""""""('')"/>

<>

<>

密码:

<>

<>

<""""""/>

<>

<>

<"">

<"""""登录系统"

""/>

<"""""重  填""""('')"/>

<>

<>

<"${}">

<":

450;:

6;:

00">

<""":

00">登录失败!

请重新登陆<>

说明:

登录表单中,将姓名与密码字段“”属性分别设置为“”,“”,向后台进行参数传递。

点击按钮,按照中的路径调用方法,传递方法的类型为“”,将提交至的方法。

{

判断用户登录是否成功

(,);

根据用户名查询用户表中的数据

<>();

获取数据库中用户表中的数据并封装在集合中

<>();

向用户管理中添加用户信息

();

根据用户编号修改用户管理页面中的用户信息

(,);

根据用户名编号查询用户表中的数据

();

根据用户编号删除用户管理页面中相应的用户信息

();

分页获取用户信息

();

修改用户密码

(,);

}说明:

方法,接受前台页面传递过来的用户名与密码,并利用编码转换类将用户名转换为8编码类型,解决了乱码问题。

实例化一个类,调用其方法,返回实体类。

如果返回值为空,则输出登录失败页面。

否则,跳转至管理员管理页面。

{

判断用户登录是否成功

(,);

根据用户名查询用户表中的数据

<>();

获取数据库中用户表中的数据并封装在集合中

<>();

向用户管理中添加用户信息

();

根据用户编号修改用户管理页面中的用户信息

(,);

根据用户名编号查询用户表中的数据

();

根据用户编号删除用户管理页面中相应的用户信息

();

分页获取用户信息

();

修改用户密码

();

}

说明:

方法对数据库进行操作。

首先连接至数据库,利用前台传来的用户名,密码字段对数据库进行查询,以结果集形式进行返回。

并实例化类,将结果集中的数据输出,返回类型。

相关界面设计见图4-1,图4-2,图4-3。

图4-1超市信息管理系统欢迎界面

图4-2超市管理员登陆界面

相关代码如下:

<""".*""8"%>

<"""c"%>

<%

=();

=()+""

+()+":

"+()

++"/";

%>

<"34.01">

<>

<>

<"<>">

<>''<>

<"""">

<"""">

<"""0">

<"""123">

<"""">

<

<"""""">

>

<""""""/>

<"">

<将表单中的数据清空>

(){

()="";

}

<>

<>

<"">

<"">

<""><>

<"">

<"""">

<>

<>

用户名:

<>

<>

<"""""""('')"/>

<>

<>

密码:

<>

<>

<""""""/>

<>

<>

<"">

<"""""登录系统"

""/>

<"""""重  填""""('')"/>

<>

<>

<"${}">

<":

450;:

6;:

00">

<""":

00">登录失败!

请重新登陆<>

说明:

方法调用的方法,将所有商品信息读出,以集合的形式存入变量“”中,在中进行调用。

相关页面设计见图。

图4-3商品添加页面

<"<>">

<>''<>

<"""">

<"""">

<"""0">

<"""123">

<"""">

<

<"""""">

>

<""""""/>

<"">

<验证账单编号>

(){

("");

(0){

("")"账单编号不能为空!

";}

(){

("")"账单编号已经存在!

";

}

^[0-9]*$/;

(()){

("")"账单编号必须为数字!

";

("")"";

}}

<将表单中的数据清空>

(){

()"";

()="";

}

<验证交易金额>

(){

("");

(0){

("")"请输入交易金额!

";}

^[0-9]*$/;

(()){

("")"非法字符,请输入数字!

";

("")"";

<验证交易单位>

(){

("");

(0){

("")"请输入交易单位!

";

}}

<验证交易数量>

(){

("");

(0){

("")"交易数量不能为空!

";}

^[0-9]*$/;

(()){

("")"非法字符,请输入数字!

";

("")"";

}}

<验证商品名称>

(){

("");

(0){

("")"商品名称不能为空!

";}

^[\u4e00-\u95]{0,}$/;

(()){

("")"非法字符,请输入汉字!

";

("")"";

}}

<验证商品描述>

(){

("");

(0){

("")"商品描述不能为空!

";

("")"";

}}

<验证各表单中输入的数据时否合法>

(){

=("");

(0<){

([i]0){

;

;

}}

;}

<验证是否确认修改>

(){

("确认修改吗?

");

(){

("恭喜您!

修改成功!

!

");

("")();

}}

<验证是否确认删除>

(){

("确认删除吗?

");

(){

"${}";

}{

;

}}

图4-4商品信息页面

<""

".*"

"8"%>

<"""c"%>

<%

=();

=()+""

+()+":

"+()

++"/";

%>

<"34.01">

<>

<>

<"<>">

<>''<>

<"""">

<"""">

<"""0">

<"""123">

<"""">

<

<"""""">

>

<""""""/>

<"">

(){

=("");

="";

=;

}

<>

<>

<>

<%

=()("");

%>

<"">

<"""">

商品名称:

<""""""/>

;是否付款:

<"">

<"0">

请选择

<>

<"1">

已付款

<>

<"2">

未付款

<>

<>

;

<"""""组合查询"""/>

<>

<>

<"">

<"">

<><"""""添加数据"

"""''"/><>

<"">

账单管理;

<>

<>

<"">

<"">

<>

<>账单编号<>

<>商品名称<>

<>商品数量<>

<>交易金<>

<>是否付款<>

<>供应<>

<>商品描述<>

<>账单时间<>

<>

<"${}""">

<>

<"65">

${}

<>

<'65'>

${}<>

<>

<'65'>

${}

<>

<'65'>

${}

<>

<'65'>

${}

<>

<'65'>

${}

<>

<'120'>

${}

<>

<'170'>

${}

<>

<>

<>

<>

<"">

<"">

<>

共<()%>条记录;

<()%>/<()%>页

<>

<><>

跳转至:

<><""""""

""/>;页

<"""""()"

"">

<><>

图4-5用户订单显示页面

4.3主要的类和其功能

类:

{

(,)

{(,);

}

(,)

{

获取表单中的数据并封装

("8");

=("");

=((""));

=("");

=((""));

=("");

=("");

=("");

=();

();

();

();

();

();

();

();

调用中向账单管理添加数据的方法

=();

=();

();

=()

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

当前位置:首页 > 小学教育 > 数学

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

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