基于Java的订餐系统设计与实现
客户端详细设计
1。设计分析
顾客模块的主要功能是浏览,订餐。浏览与自己相关的食品信息,订单信息等。用户要下订单之前临时美食车把详细信息列出,物品的单价,购买的数量,总共的价钱,可修改购买,当符合顾客要求的时候,顾客就可以下订单,下订单时首先会先到commitfood。aspx让用户确定一下订单是否付合要求,确认无误后,进入checkout。aspx填写接收信息后生成订单。然后由AddbuyInfo,Addbuyinfo方法对数据库进行操作完成的。
顾客模块详细设计主要涉及到顾客下订单和食品搜索两大功能
顾客可以通过此功能对自己选中的东西下订单,等待服务商送货.
1。  菜品浏览:可以分页浏览菜品菜品,并将想要的菜品提交到填写订单页面。然后系统打出此次订购的编号
2.订购菜品:用户根据自己的编号可以在该页面定购所需要的菜品
3.查看订单:用户根据自己的编号在该页修改已经订购的菜品。
4.修改订单:在该页修改或删除已经订购的菜品。
5.菜品查询:用户根据自己的订购编号可以在该页查自己需要的菜品.
2。顾客下订单流程图:
       
通过提供食品搜索控件,为顾客提供更为方便快捷的服务.顾客可以快速的到自己想要下订的美食。
3.搜索流程图如图4-3所示:
4。Java swing做登陆界面:
1.容器类
JFrame窗体类
JPanel面板类
JMenuBar菜单类
2.元素类
JTextField文本输入框类
JPasswordField密码输入框类
JButton按钮类
JCheckBox复选框类
JComboBox下拉列表
JLabel标签类
3。布局类
使用FlowLayout流式布局类
4.Socket API:
。Accept方法:产生“阻塞”,直到接受到一个连接,并且返回一个客户端的Socket对象实例。
.getinputStream方法:获得网络连接输入。
.getOutputStream方法:连接的另一端将得到输入,同时返回一个OutputStream对象实例。
客户端开发原理:使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开对话;会话结束后,关闭Socket.客户端不需要制定打开的端口,通常临时的、动态的分配一个1024以上的端口.
5.主要代码
1。主界面:
        setDefaultCloseOperation(javax.swing。WindowConstants。EXIT_ON_CLOSE);
        setTitle(”顾客-网络订餐系统");
        setBackground(new java.awt.Color(255, 255, 255));
        nearby.setText(”附近小吃");
        nearby。addMouseListener(new java.awt.event。MouseAdapter()
        {
            public void mouseClicked(java。awt.event.MouseEvent evt)
            {
                nearbyMouseClicked(evt);
            }
        }
        );
        suggest。setText("今日推荐");
        suggest.addMouseListener(new java.awt。event。MouseAdapter()
        {
            public void mouseClicked(java.awt.event。MouseEvent evt)
            {
                suggestMouseClicked(evt);
            }
        }
        );
        myorder。setText(”我的订单");
        myorder。addMouseListener(new java.awt。event。MouseAdapter()
java网课推荐        {
            public void mouseClicked(java.awt.event。MouseEvent evt)
            {
                myorderMouseClicked(evt);
            }
        }
        );
        myorder.addActionListener(new java。awt.event.ActionListener()
        {
            public void actionPerformed(java.awt。event.ActionEvent evt)
            {
                myorderActionPerformed(evt);
            }
        }
        );
        all。setText(”全部”);
        all.addMouseListener(new java。awt.event.MouseAdapter()
        {
            public void mouseClicked(java。awt。event。MouseEvent evt)
            {
                allMouseClicked(evt);
            }
        }
        );
        meat。setText("饭类”);
        meat.addMouseListener(new java。awt。event.MouseAdapter()
        {
            public void mouseClicked(java.awt.event.MouseEvent evt)
            {
                meatMouseClicked(evt);
            }
        }
        );
        noodle.setText("面类");
        noodle。addMouseListener(new java.awt.event。MouseAdapter()
        {
            public void mouseClicked(java。awt。event.MouseEvent evt)
            {
                noodleMouseClicked(evt);
            }
        }
        );
        west.setText(”西餐");
        west。addMouseListener(new java。awt.event.MouseAdapter()
        {
            public void mouseClicked(java.awt.event。MouseEvent evt)
            {
                westMouseClicked(evt);
            }
        }
        );
        drink。setText("饮料");
        drink.addMouseListener(new java.awt。event。MouseAdapter()
        {
            public void mouseClicked(java.awt.event。MouseEvent evt)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。