基于Java的订餐系统设计与实现课程设计说明书.docx

上传人:b****6 文档编号:15604620 上传时间:2023-07-06 格式:DOCX 页数:31 大小:158.91KB
下载 相关 举报
基于Java的订餐系统设计与实现课程设计说明书.docx_第1页
第1页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第2页
第2页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第3页
第3页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第4页
第4页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第5页
第5页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第6页
第6页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第7页
第7页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第8页
第8页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第9页
第9页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第10页
第10页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第11页
第11页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第12页
第12页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第13页
第13页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第14页
第14页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第15页
第15页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第16页
第16页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第17页
第17页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第18页
第18页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第19页
第19页 / 共31页
基于Java的订餐系统设计与实现课程设计说明书.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于Java的订餐系统设计与实现课程设计说明书.docx

《基于Java的订餐系统设计与实现课程设计说明书.docx》由会员分享,可在线阅读,更多相关《基于Java的订餐系统设计与实现课程设计说明书.docx(31页珍藏版)》请在冰点文库上搜索。

基于Java的订餐系统设计与实现课程设计说明书.docx

基于Java的订餐系统设计与实现课程设计说明书

基于Java的订餐系统设计与实现客户端详细设计

1.设计分析

顾客模块的主要功能是浏览,订餐。

浏览与自己相关的食品信息,订单信息等。

用户要下订单之前临时美食车把详细信息列出,物品的单价,购买的数量,总共的价钱,可修改购买,当符合顾客要求的时候,顾客就可以下订单,下订单时首先会先到commitfood.aspx让用户确定一下订单是否付合要求,确认无误后,进入checkout.aspx填写接收信息后生成订单。

然后由AddbuyInfo,Addbuyinfo方法对数据库进行操作完成的。

顾客模块详细设计主要涉及到顾客下订单和食品搜索两大功能

顾客可以通过此功能对自己选中的东西下订单,等待服务商送货。

1.菜品浏览:

可以分页浏览菜品菜品,并将想要的菜品提交到填写订单页面。

然后系统打出此次订购的编号

2.订购菜品:

用户根据自己的编号可以在该页面定购所需要的菜品

3.查看订单:

用户根据自己的编号在该页修改已经订购的菜品。

4.修改订单:

在该页修改或删除已经订购的菜品。

5.菜品查询:

用户根据自己的订购编号可以在该页查找自己需要的菜品。

2.顾客下订单流程图:

顾登提示错N

i验证登陆用是否正Y

提示错订单生N

Y

订单确显示购物

N

确认结

Y

修改订不购买此商

删除购物车信

返回结束操作顾客下单流程图据图图1

顾客可以快速的找到自己想通过提供食品搜索控件,为顾客提供更为方便快捷的服务。

要下订的美食。

搜索流程图3.:

4-3所示如图

开FoodSearc键索控txtSearc判提示输是否为数据库查提示未找匹配成dlSearchBin()User_SearchReault页结束2图搜索模块程序流程图

4.Javaswing做登陆界面:

1.容器类

窗体类JFrameJPanel面板类菜单类JMenuBar元素类2.

JTextField文本输入框类

JPasswordField密码输入框类

JButton按钮类

JCheckBox复选框类

JComboBox下拉列表

JLabel标签类

3.布局类

流式布局类使用FlowLayout4.SocketAPI:

.Accept方法:

产生“阻塞”,直到接受到一个连接,并且返回一个客户端的Socket对象实例。

.getinputStream方法:

获得网络连接输入.

.getOutputStream方法:

连接的另一端将得到输入,同时返回一个OutputStream对象实例。

客户端开发原理:

使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开对话;会话结束后,关闭Socket。

客户端不需要制定打开的端口,通常临时的、动态的分配一个1024以上的端口。

5.主要代码

1.主界面:

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

setTitle(顾客-网络订餐系统);

setBackground(newjava.awt.Color(255,255,255));

nearby.setText(附近小吃);

nearby.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

nearbyMouseClicked(evt);

}

}

);

suggest.setText(今日推荐);

suggest.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

suggestMouseClicked(evt);

}

}

);

myorder.setText(我的订单);

myorder.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

myorderMouseClicked(evt);

}

}

);

myorder.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

myorderActionPerformed(evt);

}

}

);

all.setText(全部);

all.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

allMouseClicked(evt);

}

}

);

meat.setText(饭类);

meat.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

meatMouseClicked(evt);

}

}

);

noodle.setText(面类);

noodle.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

noodleMouseClicked(evt);

}

}

);

west.setText(西餐);

west.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

westMouseClicked(evt);

}

}

);

drink.setText(饮料);

drink.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

drinkMouseClicked(evt);

}

}

);

other.setText(其他);

other.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

otherMouseClicked(evt);

}

}

);

controlcenter.setText(个人中心);

controlcenter.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

controlcenterActionPerformed(evt);

}

}

);

2.订单信息

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

setTitle(我的订单);

jLabel1.setFont(newjava.awt.Font(微软雅黑,0,24));//

NOI18N

jLabel1.setText(我的订单);

jLabel2.setText(支付状况:

);

jLabel3.setText(未支付);

jButton1.setText(确认收货);

jButton1.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

jButton1ActionPerformed(evt);

}

}

);

jButton2.setText(取消);

jButton2.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

jButton2ActionPerformed(evt);

}

}

);

jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());

jCheckBox1.setText(COCO咖啡);

jCheckBox1.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

jCheckBox1ActionPerformed(evt);

}

}

);

jCheckBox2.setText(铁板牛肉);

jCheckBox3.setText(木须肉盖浇饭);

javax.swing.GroupLayoutjPanel1Layout=new

javax.swing.GroupLayout(jPanel1);

jPanel1.setLayout(jPanel1Layout);

jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel1Layout.createSequentialGroup()

.addContainerGap()

.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jCheckBox1)

.addComponent(jCheckBox2)

.addComponent(jCheckBox3))

.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE))

);

jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel1Layout.createSequentialGroup()

.addContainerGap()

.addComponent(jCheckBox1)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(jCheckBox2)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(jCheckBox3)

.addContainerGap(207,Short.MAX_VALUE))

);

jButton3.setText(删除选中);

jLabel4.setText(总价:

);

jTextField1.setEditable(false);

jTextField1.setText(?

尸);

jTextField1.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

jTextField1ActionPerformed(evt);

}

}

);

顾客界面

订单生成界面:

订单查看界面:

文件操作:

服务器管理员详细设计

1.编写目的

编写此文档的目的是为了让管理员更加便捷的管理软件及用户的信息,方便订餐系统的实现。

系统模块详细设计2.

每个模块分别有不同的权限和分别是顾客模块,管理员模块。

本系统总共有两大模块,使用功能。

3.登陆模块的流程图

开始

用户名

密码

N

是否合法

Y

结束

1-1登陆流程图

4.管理员模块详细设计

管理员:

查看用户订单,查看用户信息,并根据用户信息和用户订单对菜品进行发派。

管理员可以通过订单管理功能来处理日常的订单。

管理员订单处理程序流程图:

管理员登提示错验证登陆用i是否正N

绑定数据库信信息绑定无选择具体订

显示订订单管理操更新数据库结束操作管理员订单处理程序流程图1-2图

管理员可以通过此功能模块添加想要添加的各种信息,比如订单处理等功能。

开始Session[是否为空输添加否为空ClassManagerClass

Addadmin()管验证户是否已存在添加到数据库开始FoodSearch键入索控件txtSearch判断是否为空数据库查找匹配成功dlSearchBindUser_SearchReault页结束

]”“AID是框用员搜()

提示登录

提示输入

提示输入

入理

提示未找到

提示重新输入

结束

1-3管理员添加程序流程图图

顾客可以快速的为顾客提供更为方便快捷的服务。

通过提供美食搜索控件,找到自己想要下订的美食。

:

所示1-4搜索流程图如图

1-4搜索模块程序流程图图

所需要的技术5.界面的设计:

管理员登陆界面LoginJavaSwing做登陆界面:

1.容器类窗体类JFrame面板类JPanelJMenuBar菜单类元素类2.文本输入框类JTextField

JPasswordField密码输入框类JButton按钮类复选框类JCheckBox下拉列表JComboBox标签类JLabel布局类3、

使用FlowLayout流式布局类SocketAPI通信使用.Accept方法等待客(大于1024的端口),服务器端使用ServerSocket监听指定的端口户连接请求,客户连接后,会产生对话,在完成对话后,关闭连接。

Socket客户端服务器之间连接用)服务器内存管理(dll

项目名Check

check.java

login.java

controlcenter.java

indexJFrame.java

indexmanage.java

myorder.java

manage.java

acounting.java

icon.java

6.主要代码:

登录界面1.jButton2.setText(登录);

jButton2.addActionListener(newjava.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

jButton2ActionPerformed(evt);

}

}

);

2.管理界面

jPasswordField1.addActionListener(new

java.awt.event.ActionListener()

{

publicvoidactionPerformed(java.awt.event.ActionEvent

evt)

{

jPasswordField1ActionPerformed(evt);

}

}

);

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

setTitle(店铺信息);

jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());

javax.swing.GroupLayoutjPanel1Layout=new

javax.swing.GroupLayout(jPanel1);

jPanel1.setLayout(jPanel1Layout);

jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0,95,Short.MAX_VALUE)

);

jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0,110,Short.MAX_VALUE)

);

scream.setAutoscrolls(true);

javax.swing.GroupLayoutscreamLayout=new

javax.swing.GroupLayout(scream);

scream.setLayout(screamLayout);

screamLayout.setHorizontalGroup(

screamLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0,612,Short.MAX_VALUE)

);

screamLayout.setVerticalGroup(

screamLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0,289,Short.MAX_VALUE)

);

other.setText(其他);

other.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

otherMouseClicked(evt);

}

}

);

drink.setText(饮料);

drink.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

drinkMouseClicked(evt);

}

}

);

noodle.setText(面类);

noodle.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

noodleMouseClicked(evt);

}

}

);

west.setText(西餐);

west.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(java.awt.event.MouseEventevt)

{

westMouseClicked(evt);

}

}

);

meat.setText(饭类);

meat.addMouseListener(newjava.awt.event.MouseAdapter()

{

publicvoidmouseClicked(j

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

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2