




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄一、課程設計概述3二、系統的需求分析3三、系統總體設計6四、詳細設計7五、 系統實現11六、系統測試18七、課程設計總結21八、參考文獻21一、課程設計概述系統的主要目標減輕收銀時計算商品總價的復雜度系統的開發環境及運行環境操作系統:Windos7Java版本:5IDE:myeclipse 2017 CI二、系統的需求分析1.系統可行性分析技術復雜度相對簡單投入資金小對于社會普遍存在的收銀時計算問題得到良好解決人員投入1人2. 系統功能需求分析商品銷售統計系統的完整功能如下:2.1輸入商品信息管理對于輸入的商品,可以進行數量上的修改,以及商品的刪除2.2銷售統計管理對已輸入的
2、商品進行總價統計,并能在商品數量多的時候進行分頁顯示3. 系統功能描述此系統的主要功能就是把人們從繁瑣的收錢計費中解脫出來,通過計算機來計算出所應收取的錢數。4. 系統的數據流圖商品銷售統計系統是基于pc上的系統,通過數據庫里的商品單價來進行計算總價操作。商品銷售統計系統的基本數據流圖如圖1所示。圖 1分析商品銷售統計系統的功能需求,得到功能級數據流圖如圖2。圖 25. 系統UML建模設計:6. 系統的用例分析7. 系統的狀態圖8. 系統的UML類圖三、系統總體設計系統結構方框圖各模塊功能詳細的UML類圖設計數據管理子系統:數據庫只有一張圖表故省略掉E-R圖、數據表之間的關系、數據庫表結構數據
3、庫表設計人機交互子系統四、詳細設計各模塊的流程圖主模塊結算商品輸入商品修改商品刪除商品查詢商品5、 系統實現想使用工廠模式來進行事務的調用,又因為種種因素而沒直接使用,而直接裝進了主調用功能類中各模塊、各個類的具體實現 (包括截圖)對應與Mybatis的接口statisticsModel 模型類SetXXX . getXXX .int id;String name;int mea;float price;double amount; / 考慮計量單位的不同double total; /單類商品 的總價格Overridepublic String toString() String str;if
4、(mea=0)str=件;return 編號:+id+, 商品名稱: + name + , 計量單位: +str+ , 價格: + price + /+str+, 數量:+ amount+ 件, 合計:+total+;elsestr=kg;return 編號:+id+, 商品名稱: + name + , 計量單位: +str+ , 價格: + price + /+str+, 重量:+ amount+ kg, 合計:+total+;重點功能的實現statisticsUtil 商品查詢功能類package com.util;import java.io.IOException;import jav
5、a.io.Reader;import java.util.List;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import com.impl.statisticsOperation;import com.model.statisticsModel;public
6、 class statisticsUtil private static SqlSessionFactory sqlSessionFactory;private static Reader reader;statictry reader=Resources.getResourceAsReader(com/conf/dbconf.xml);sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader); catch (IOException e) / TODO Auto-generated catch blocke.printSt
7、ackTrace();public void all_select()SqlSession sqlSession=sqlSessionFactory.openSession();List query_msg=null;try statisticsOperation statisticsOperation=sqlSession.getMapper(statisticsOperation.class);query_msg=statisticsOperation.all_select(); catch (Exception e) / TODO Auto-generated catch blocke.
8、printStackTrace();finally sqlSession.close();for(int j=0;jquery_msg.size();j+)System.out.println(query_msg:+query_msg.get(j);/查找商品public statisticsModel statistics_select(int id)SqlSession sqlSession=sqlSessionFactory.openSession();statisticsModel myModel=null;List query_msg=null;try statisticsOpera
9、tion statisticsOperation=sqlSession.getMapper(statisticsOperation.class);query_msg=statisticsOperation.statistics_select(id); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();finally sqlSession.close();for(int j=0;jquery_msg.size();j+)myModel=(statisticsModel)query_msg.get(j)
10、;System.out.println(query_msg:+query_msg.get(j);return myModel;主功能類 testpackage com.serv;import java.util.ArrayList;import java.util.List;import java.util.Scanner;import com.model.statisticsModel;import com.util.statisticsUtil;public class test public static statisticsUtil statisticsUtil = new stati
11、sticsUtil();public static void main(String args) List sale = new ArrayList();statisticsModel temp = null;double total = 0;boolean flag = true;/ TODO Auto-generated method stubSystem.out.println(歡迎進入商品銷售管理系統);System.out.println(請輸入相應的數字執行對應的操作:);Scanner scanner = new Scanner(System.in);String key = ;
12、while (flag) System.out.println(1.輸入商品 2.修改商品數量 3.刪除商品 4.查看總價統計 0.重新計算 其他.退出系統);System.out.println(-我是可愛的分隔符-);try key = scanner.nextLine(); catch (Exception e) / TODO: handle exceptione.printStackTrace();switch (key) case 1:statisticsUtil.all_select();while (true) System.out.println(請輸入商品編號:(非數字結束輸
13、入);int number;try number = scanner.nextInt(); catch (Exception e1) / TODO Auto-generated catch blockbreak;try temp = statisticsUtil.statistics_select(number);if (temp = null) System.out.println(無此商品);continue;if(temp.getMea()=0)System.out.println(清輸入數量:);else if(temp.getMea()=1)System.out.println(請輸
14、入重量 單位kg);double amount = scanner.nextDouble();System.out.println(amount);temp.setAmount(amount);temp.setTotal();sale.add(temp); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();scanner.nextLine();break;case 2:System.out.println(請輸入要修改的行號:);try int index = scanner.nextInt();t
15、emp = (statisticsModel) sale.get(index);System.out.println(請輸入要修改的數量:);double number = scanner.nextDouble();temp.setAmount(number);temp.setTotal();sale.set(index, temp);scanner.nextLine();System.out.println(修改成功!); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();break;case 3
16、:System.out.println(請輸入要刪除的行號:);try int index = scanner.nextInt();sale.remove(index);scanner.nextLine();System.out.println(刪除成功!); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();break;case 4:for (int i = 0; i sale.size(); i+) System.out.println(i + . + sale.get(i);total += (statisticsModel) sale.get(i).getTotal();System.out.println(共計: + total + 元);total = 0;break;case 0:sale.clear();break;default:flag = false;break;System.out.println(再見);六、系統測試測試用例測試結果
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物化學分子基礎概念題庫及解析
- 珠寶首飾行業設計大賽試題
- 藥品進口代理協議
- 2025年經濟師備考方法分享試題及答案
- 人員管理與績效考核試題及答案
- 項目擴展及合作策略試題及答案
- 信陽市學法用法考試試題及答案
- 防釣魚測試題及答案
- 急診精神科的合作模式計劃
- 購房貸款協議書
- JJF 1303-2011霧度計校準規范
- t軸重DZ2型轉向架
- GB/T 17791-2017空調與制冷設備用銅及銅合金無縫管
- 換熱器檢修施工綜合方案
- 羅氏C8000使用操作說明
- 融資融券策略課件
- 單層鋼結構廠房施工組織設計方案
- 項目盡職調查清單模板
- 唯物主義和經驗批判主義研讀課件
- 環境保護和水土保持保證體系框圖
- 眼部健康檢測與分析課件
評論
0/150
提交評論