公司定飯系統java的簡單介紹

本文目錄一覽:

java做網上訂餐系統,具體需要些什麼?

除了jsp還需要很多,他只是前台顯示頁面,還需要後台操作和數據庫連接。

jsp,是前台頁面。是java的。

asp是.net的吧,這個不確定。

jsp可以用ssh框架,也可以不用,搭建框架只不過是編碼簡單規範點,沒有說必須用框架的。

建議用jsp和ssh框架。

如何進行JAVA的微信訂餐系統開發?

其實么微信開發也就是調用他的API獲取用戶的操作內容

其實可以先拋開微信,先把後台和功能做好

我之前做個訂餐系統,是有個硬件需要購買的,這個硬件可以打印訂單和提醒。

硬件廠家會提供接口給你的,用戶購買成功給這個接口穿參數,硬件就可以接收後打印訂單了同時也有短信提醒。

當系統做好了,只需要熟悉一下微信的接口,可以獲取用戶輸入的內容,根據用戶的內容獲取系統的訂餐信息返回到微信窗口即可

比如 : 你這邊推送 套餐信息,用戶輸入套餐編號,你根據編號去查詢這個套餐信息,調用硬件打印方法和短信提醒方法再返回信息到微信窗口給用戶,大概的流程就是這樣的。

其實這涉及到的接口真的很少的,跟你開發語言也沒關係。

java吃貨聯盟訂餐系統

ackage cn.practice1200;

import java.util.Scanner;

public class Eater_Alliance {

/**

* 吃貨聯盟訂餐系統

*

* @author QCD

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner input = new Scanner(System.in);

// 初始化3個數組存儲菜品、價格、點贊數

String[] dishNames = { “苦瓜炒雞蛋”, “紅燒排骨”, “辣子雞丁”, “石鍋魚”, “麻婆豆腐” };

double[] prices = { 15.0, 30.0, 35.0, 90.0, 20.0 };

int[] praiseNums = new int[5];

// 在初始化6個數組用於存儲訂單信息

String[] names = new String[5];// 保存訂餐人姓名

String[] dishMegs = new String[5];// 保存所選菜品名

int[] dishNums = new int[5];// 保存所選菜品份數

int[] times = new int[5];// 保存送餐時間

String[] addresses = new String[5];// 保存送餐地址

int[] states = new int[5];// 保存訂單狀態:0表示已預訂,1表示已完成

double[] sumPrices = new double[5];// 保存訂單的總金額

// 初始化2條訂單信息

// 第1條

names[0] = “王大鎚”;

dishMegs[0] = “辣子雞丁”;

dishNums[0] = 2;

times[0] = 12;

addresses[0] = “莞太路3號”;

states[0] = 0;

sumPrices[0] = 70.0;

// 第2條

names[1] = “王大柱”;

dishMegs[1] = “麻婆豆腐”;

dishNums[1] = 1;

times[1] = 19;

addresses[1] = “建設路2號”;

states[1] = 1;

sumPrices[1] = 25.0;

/* 實現菜單切換 */

System.out.println(“歡迎使用“吃貨聯盟訂餐系統””);

int num = 1;// 用戶輸入0返回主菜單否則退出系統

boolean isExit = false;// 標記用戶是否退出系統,true為退出

// 循環控制用戶輸入選擇並執行

do {

System.out.println(“************************”);

System.out.println(“1、我要訂餐”);

System.out.println(“2、查看餐袋”);

System.out.println(“3、簽收訂單”);

System.out.println(“4、刪除訂單”);

System.out.println(“5、我要點贊”);

System.out.println(“6、退出系統”);

System.out.println(“************************”);

System.out.print(“請選擇:”);

num = input.nextInt();// 用戶輸入所要選擇進行的操作

/* 使用switch結構來建立選擇內容 */

switch (num) {

case 1:// 我要訂餐

System.out.println(“***我要訂餐***”);

boolean isAdd = false;// 記錄是否可以點餐

for (int i = 0; i  names.length; i++) {

if (names[i] == null) {

isAdd = false;

System.out.print(“請輸入訂餐人姓名:”);

String name = input.next();

System.out.println(“序號” + “\t” + “菜名” + “\t\t” + “單價” + “\t” + “點贊數”);

for (int j = 0; j  dishNames.length; j++) {

System.out.println(

(j + 1) + “\t” + dishNames[j] + “\t\t” + prices[j] + “元” + “\t” + praiseNums[j]);

}

System.out.print(“請選擇您要點的菜品編號:”);

int chooseDish = input.nextInt();

String dishMeg = dishNames[chooseDish – 1];

System.out.print(“請選擇您需要的份數:”);

int number = input.nextInt();

System.out.print(“請輸入送餐時間(送餐時間是10點至20點間整點送餐):”);

int time = input.nextInt();

while (time  10 || time  20) {

System.out.print(“您的輸入有誤,請輸入10-20間的整數”);

time = input.nextInt();

}

System.out.print(“請輸入送餐地址:”);

String address = input.next();

// 默認可以預定,不用寫訂單狀態

System.out.println(“訂餐成功!”);

System.out.println(“您定的是:” + dishNames[chooseDish – 1] + number + “份”);

System.out.println(“送餐時間:” + time + “點”);

double sumPrice = prices[chooseDish – 1] * number;// 計算餐費

double sendMoney = (sumPrice = 50) ? 0 : 5;// 計算送餐費

System.out.println(“餐費:” + sumPrice + “元,” + “送餐費” + sendMoney + “元,” + “總計:”

+ (sumPrice + sendMoney) + “元。”);

// 添加數據

names[i] = name;

dishMegs[i] = dishMeg;

times[i] = time;

dishNums[i] = number;

addresses[i] = address;

sumPrices[i] = sumPrice + sendMoney;

break;

}

if (isAdd) {

System.out.println(“對不起,您的餐袋已滿!”);

}

}

break;

case 2:// 查看餐袋

System.out.println(“***查看餐袋***”);

System.out.println(“序號\t訂餐人\t餐品名稱\t餐品數量\t送餐時間\t送餐地址\t總金額\t訂單狀態”);

for (int i = 0; i  names.length; i++) {

if (names[i] != null) {

String state = (states[i] == 0) ? “已預訂” : “已完成”;

System.out.println((i + 1) + “\t” + names[i] + “\t” + dishMegs[i] + “\t” + dishNums[i] + “份”

+ “\t” + times[i] + “\t” + addresses[i] + “\t” + sumPrices[i] + “元” + “\t” + state);

}

}

break;

case 3:// 簽收訂單

System.out.println(“***簽收訂單***”);

boolean isSignFind = false;

System.out.print(“請選擇要簽收的訂單序號:”);

int sign = input.nextInt();

for (int i = 0; i  names.length; i++) {

if (names[i] != null  states[i] == 0  sign == i + 1) {

states[i] = 1;

System.out.println(“訂單簽收成功!”);

isSignFind = true;// 標記已找到的訂單

} else if (names[i] != null  states[i] == 1  sign == i + 1) {

System.out.println(“您選擇的訂單已完成簽收,不能再次簽收!”);

isSignFind = true;// 標記已找到的訂單

}

}

if (!isSignFind) {

System.out.println(“您選擇的訂單不存在!”);

}

break;

case 4:// 刪除訂單

System.out.println(“***刪除訂單***”);

boolean isDelFind = false;

System.out.print(“請輸入要刪除的訂單序號:”);

int delID = input.nextInt();

for (int i = 0; i  names.length; i++) {

// 根據狀態值判斷能不能刪除,只有已完成的才能刪除

if (names[i] != null  states[i] == 1  delID == i + 1) {

isDelFind = true;

for (int j = delID – 1; j  names.length – 1; j++) {

names[j] = names[j + 1];

dishMegs[j] = dishMegs[j + 1];

dishNums[j] = dishNums[j + 1];

times[j] = times[j + 1];

addresses[j] = addresses[j + 1];

states[j] = states[j + 1];

sumPrices[j] = sumPrices[j + 1];

}

// 將最後一位清空

names[names.length – 1] = null;

dishMegs[names.length – 1] = null;

dishNums[names.length – 1] = 0;

times[names.length – 1] = 0;

addresses[names.length – 1] = null;

states[names.length – 1] = 0;

sumPrices[names.length – 1] = 0;

System.out.println(“刪除訂單成功!”);

break;

} else if (names[i] != null  states[i] == 0  delID == i + 1) {

isDelFind = true;

System.out.println(“您選擇的訂單未簽收,不能刪除!”);

break;

}

} // 未找到的訂單不能刪除

if (!isDelFind) {

System.out.println(“您要刪除的訂單不存在!”);

}

break;

case 5:// 我要點贊

System.out.println(“***我要點贊***”);

// 顯示菜品信息

System.out.println(“序號\t菜名\t單價”);

for (int i = 0; i  dishNames.length; i++) {

String priaiseNum = (praiseNums[i]  0) ? praiseNums[i] + “贊” : “”;

System.out.println((i + 1) + “\t” + dishNames[i] + “\t” + prices[i] + “元” + priaiseNum);

}

System.out.print(“請選擇您要點贊的菜品序號:”);

int number = input.nextInt();

praiseNums[number – 1]++;

System.out.println(“點贊成功”);

break;

case 6:// 退出系統

isExit = true;

break;

default:// 退出系統

isExit = true;

break;

}

// 返回主界面

if (!isExit) {

System.out.print(“輸入0返回:”);

num = input.nextInt();

} else {

break;

}

} while (num == 0);

System.out.println(“謝謝惠顧,歡迎您再次使用!”);

input.close();

}

}

JAVA語言編寫的網上訂餐系統購物車功能如何實現?

用Vector 或者是HashMap去裝

下面有部分代碼你去看吧

package com.aptech.restrant.DAO;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import java.util.Set;

import java.sql.Connection;

import com.aptech.restrant.bean.CartItemBean;

import com.aptech.restrant.bean.FoodBean;

public class CartModel {

private Connection conn;

public CartModel(Connection conn) {

this.conn=conn;

}

/**

* 得到訂餐列表

* @return

*/

public List changeToList(Map carts) {

// 將Set中元素轉換成數組,以便使用循環進行遍歷

Object[] foodItems = carts.keySet().toArray();

// 定義double變量total,用於存放購物車內餐品總價格

double total = 0;

List list = new ArrayList();

// 循環遍歷購物車內餐品,並顯示各個餐品的餐品名稱,價格,數量

for (int i = 0; i  foodItems.length; i++) {

// 從Map對象cart中取出第i個餐品,放入cartItem中

CartItemBean cartItem = (CartItemBean) carts

.get((String) foodItems[i]);

// 從cartItem中取出FoodBean對象

FoodBean food1 = cartItem.getFoodBean();

// 定義int類型變量quantity,用於表示購物車中單個餐品的數量

int quantity = cartItem.getQuantity();

// 定義double變量price,表示餐品單價

double price = food1.getFoodPrice();

// 定義double變量,subtotal表示單個餐品總價

double subtotal = quantity * price;

// // 計算購物車內餐品總價格

total += subtotal;

cartItem.setSubtotal(subtotal);

cartItem.setTotal(total);

list.add(cartItem);

}

return list;

}

/**

* 增加訂餐

*/

public Map add(Map cart, String foodID) {

// 購物車為空

if (cart == null) {

cart = new HashMap();

}

FoodModel fd = new FoodModel(conn);

FoodBean food = fd.findFoodById(foodID);

// 判斷購物車是否放東西(第一次點餐)

if (cart.isEmpty()) {

CartItemBean cartBean = new CartItemBean(food, 1);

cart.put(foodID, cartBean);

} else {

// 判斷當前菜是否在購物車中,false表示當前菜沒有被點過。。

boolean flag = false;

// 得到鍵的集合

Set set = cart.keySet();

// 遍歷集合

Object[] obj = set.toArray();

for (int i = 0; i  obj.length; i++) {

Object object = obj[i];

// 如果購物車已經存在當前菜,數量+1

if (object.equals(foodID)) {

int quantity = ((CartItemBean) cart.get(object))

.getQuantity();

quantity += 1;

System.out.println(quantity);

((CartItemBean) cart.get(object)).setQuantity(quantity);

flag = true;

break;

}

}

if (flag == false) {

// 把當前菜放到購物車裡面

CartItemBean cartBean = new CartItemBean(food, 1);

cart.put(foodID, cartBean);

}

}

return cart;

}

/**

* 取消訂餐

*/

public Map remove(Map cart, String foodID) {

cart.remove(foodID);

return cart;

}

/**

* 更新購物車信息

* @param cart

* @param foodID

* @return

*/

public MapString, CartItemBean update(Map cart, String foodID,

boolean isAddorRemove) {

Map map;

if (isAddorRemove) {

map = add(cart, foodID);

} else {

map = remove(cart, foodID);

}

return map;

}

}

原創文章,作者:VAGMZ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/330228.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
VAGMZ的頭像VAGMZ
上一篇 2025-01-16 15:46
下一篇 2025-01-16 15:46

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Deepin系統分區設置教程

    本教程將會詳細介紹Deepin系統如何進行分區設置,分享多種方式讓您了解如何規劃您的硬盤。 一、分區的基本知識 在進行Deepin系統分區設置之前,我們需要了解一些基本分區概念。 …

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29

發表回復

登錄後才能評論