小郡肝火锅点餐系统代码实现(部分)
项目结构:
Java代码实现部分 :
Food.java
package bean; import java.math.BigDecimal; public class Food { private int id; // 主键 private String foodname; // 菜名 private int type_id; // 菜系 private String descript; // 描述 private BigDecimal price; // 价格 private int saling; // 在售 private String img; //图片 public String getDescript() { return descript; } public void setDescript(String deccript) { this.descript = deccript; } public String getFoodname() { return foodname; } public void setFoodname(String foodname) { this.foodname = foodname; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getImg() { return img; } public void setImg(String img) { this.img = img; } public BigDecimal getPrice() { return price; } public void setPrice(BigDecimal price) { this.price = price; } public int getSaling() { return saling; } public void setSaling(int saling) { this.saling = saling; } public int getType_id() { return type_id; } public void setType_id(int type_id) { this.type_id = type_id; }}
OrderDao.java
package dao; import bean.Order; import java.util.List; public interface OrderDao{ void addOrder(Order order) throws Exception; Order findUF(Order order) throws Exception ; List<Order> findUserId(String userId) throws Exception; Order findById(String id) throws Exception; void removeOrder(int id) throws Exception; }
O'r'de'r'DaoImpl.java
package dao.daoImpl; import bean.Food;import bean.Order;import dao.FoodDao;import dao.OrderDao;import util.C3P0Util; import java.math.BigDecimal;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.ArrayList;import java.util.List; public class OrderDaoImpl implements OrderDao { FoodDao foodDao = new FoodDaoImpl(); @Override public void addOrder(Order order) throws Exception { //查找是否该用户已经添加了这道菜 Order sc = this.findUF(order); if(sc == null){ //该用户还没有添加这道菜 String sql = "INSERT INTO `xiaojungan`.`t_order`(`food_id`,`user_id`,`table_id`,`food_account`) VALUES(?,?,?,?)"; try( Connection conn = C3P0Util.getConnection(); PreparedStatement ps = conn.prepareStatement(sql); ) { ps.setInt(1,order.getFood_id()); ps.setInt(2,order.getUser_id()); ps.setInt(3,order.getTable_id()); ps.setInt(4,order.getFood_account()); ps.executeUpdate(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("添加失败!"); } }else{ //已经添加这道菜,则更新数量 String sql = "UPDATE `xiaojungan`.`t_order` SET `food_account` = "+ sc.getFood_account()+"" + "+1 WHERE id="+sc.getId(); System.out.println(sql); try( Connection conn = C3P0Util.getConnection(); PreparedStatement ps = conn.prepareStatement(sql); ) { ps.executeUpdate(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("添加失败!"); } } } @Override public Order findUF(Order order) throws Exception { String sql = "select * from t_order where user_id=? and food_id=?"; Order s = null; try( Connection conn = C3P0Util.getConnection(); PreparedStatement ps = conn.prepareStatement(sql); ) { ps.setInt(1,order.getUser_id()); ps.setInt(2,order.getFood_id()); try( ResultSet rs = ps.executeQuery(); ){ if(rs.next()) { s = new Order(); s.setId(rs.getInt(1)); s.setFood_id(rs.getInt(2)); s.setUser_id(rs.getInt(3)); s.setFood_account(rs.getInt(4)); Food b = foodDao.findFood_id(order.getFood_id()); BigDecimal sellingPrice = b.getPrice(); String foodName = b.getFoodname(); s.setPrice(sellingPrice); s.setFoodName(foodName); //计算总价 s.setTotalPrice(sellingPrice.multiply(BigDecimal.valueOf(s.getFood_account()))); System.out.println("s:" + s); } }catch (Exception e){ } } catch (Exception e) { e.printStackTrace(); } return s; } @Override public List<Order> findUserId(String userId) throws Exception { String sql = "select * from t_order where user_id=?"; List<Order> shopCartList = new ArrayList<>(); try( Connection conn = C3P0Util.getConnection(); PreparedStatement ps = conn.prepareStatement(sql) ) { ps.setInt(1, Integer.parseInt(userId)); try ( ResultSet rs = ps.executeQuery() ) { //将查询出的结果数据封装到List对象中 while(rs.next()){ Order s = new Order(); s.setId(rs.getInt(1)); s.setFood_id(rs.getInt(2)); s.setUser_id(rs.getInt(3)); s.setTable_id(rs.getInt(4)); s.setFood_account(rs.getInt(5)); Food b = foodDao.findFood_id(s.getFood_id()); BigDecimal sellingPrice = b.getPrice(); String foodName = b.getFoodname(); s.setPrice(sellingPrice); s.setFoodName(foodName); //计算总价 s.setTotalPrice(sellingPrice.multiply(BigDecimal.valueOf(s.getFood_account()))); shopCartList.add(s); } } catch (Exception e) { e.printStackTrace(); } }catch (Exception e){ e.printStackTrace(); } return shopCartList; } public Order findById(String id) throws Exception { String sql = "select * from t_order where id=?"; Order s = null; try( Connection conn = C3P0Util.getConnection(); PreparedStatement ps = conn.prepareStatement(sql) ) { ps.setInt(1, Integer.valueOf(id)); try ( ResultSet rs = ps.executeQuery() ) { //将查询出的结果数据封装到Order对象中 if(rs.next()){ s = new Order(); s.setId(rs.getInt(1)); s.setFood_id(rs.getInt(2)); s.setUser_id(rs.getInt(3)); s.setTable_id(rs.getInt(4)); s.setFood_account(rs.getInt(5)); Food b = foodDao.findFood_id(s.getFood_id()); BigDecimal sellingPrice = b.getPrice(); String foodName = b.getFoodname(); s.setPrice(sellingPrice); s.setFoodName(foodName); //计算总价 s.setTotalPrice(sellingPrice.multiply(BigDecimal.valueOf(s.getFood_account()))); return s; } } catch (Exception e) { e.printStackTrace(); } }catch (Exception e){ e.printStackTrace(); } return s; } @Override public void removeOrder(int id) throws Exception { String sql = "DELETE FROM `xiaojungan`.`t_order` WHERE id=?"; try( Connection conn = C3P0Util.getConnection(); PreparedStatement ps = conn.prepareStatement(sql); ) { ps.setInt(1, id); ps.executeUpdate(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("移除失败!"); } }}
OrderService.java
package service; import bean.Order; import java.util.List; public interface OrderService { void addOrder(Order order) throws Exception ; List<Order> findByUserId(String usr_id) throws Exception; Order findById(String id) throws Exception; void clear(); void removeOrder(String[] orders); }
OrderServiceImpl.java
package service.serviceImpl; import bean.Order;import dao.OrderDao;import dao.daoImpl.OrderDaoImpl;import service.OrderService; import java.math.BigDecimal;import java.util.List; public class OrderServiceImpl implements OrderService { BigDecimal totalPrice; private OrderDao orderDao = new OrderDaoImpl(); @Override public void addOrder(Order order) throws Exception { orderDao.addOrder(order); } @Override public List<Order> findByUserId(String user_id) throws Exception { List<Order> orderList = orderDao.findUserId(user_id); return orderList; } @Override public void removeOrder(String[] orders) { //遍历数据 for(int i=0;i<orders.length;i++) { //移除 int shopId=Integer.valueOf(orders[i]); try { orderDao.removeOrder(shopId); } catch (Exception e) { e.printStackTrace(); } } } public Order findById(String id) throws Exception { Order order = orderDao.findById(id); return order; } @Override public void clear() { }}
OrderServlet.java
package servlet; import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import java.io.IOException; @WebServlet("/OrderServlet") public class OrderServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); Object user = session.getAttribute("user"); if(user != null){ //用户登陆 response.sendRedirect("/order.html"); }else if(user == null){ //未登录 response.getWriter().write("请先登录!!1秒后转到登陆界面"); response.setHeader("refresh", "1;url=" + request.getContextPath() + "/login.html"); } } }
User.java
package bean;import java.util.Date;public class User {private int id;private String username;private String password;private int table_id;private int role;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public int getRole() {return role;}public void setRole(int role) {this.role = role;}public int getTable_id() {return table_id;}public void setTable_id(int table_id) {this.table_id = table_id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;} }
UserDaoImpl.java
package dao.daoImpl;import bean.User;import dao.UserDao; import util.C3P0Util; import java.sql.ResultSet; import java.sql.Connection; import java.sql.PreparedStatement;public class UserDaoImpl implements UserDao {@Overridepublic User login(User user)throws Exception {String sql = "select * from t_user where username=? and password=?";User lo= null;try(Connection conn = C3P0Util.getConnection();PreparedStatement ps = conn.prepareStatement(sql);) {ps.setString(1, user.getUsername());ps.setString(2, user.getPassword());try(ResultSet rs = ps.executeQuery();){if(rs.next()) {lo = new User();lo.setId(rs.getInt(1));lo.setTable_id(rs.getInt(2));lo.setUsername(rs.getString(3));lo.setPassword(rs.getString(4));lo.setRole(rs.getInt(5));System.out.println("lo:" + lo);}}} catch (Exception e) {e.printStackTrace();}return lo;}@Overridepublic void addUser(User user) throws Exception {String sql = "INSERT INTO t_user(username,password) VALUES(?,?)";try (Connection conn = C3P0Util.getConnection();PreparedStatement ps = conn.prepareStatement(sql)) {ps.setString(1, user.getUsername());ps.setString(2, user.getPassword());ps.executeUpdate();} catch (Exception e) {e.printStackTrace();throw new RuntimeException("注册失败!");}}@Overridepublic User findById(int id) throws Exception {String sql = "select * from t_user where id=?";User u = null;try(Connection conn = C3P0Util.getConnection();PreparedStatement ps = conn.prepareStatement(sql)) {ps.setInt(1, id);try (ResultSet rs = ps.executeQuery()) {//将查询出的结果数据封装到Book对象中if(rs.next()){u = new User();u.setId(rs.getInt(1));u.setTable_id(rs.getInt(2));u.setUsername(rs.getString(3));u.setPassword(rs.getString(4));u.setRole(rs.getInt(5));return u;}} catch (Exception e) {e.printStackTrace();}}catch (Exception e){e.printStackTrace();}return u;}}
转载于:https://www.cnblogs.com/luv-letter/p/10944996.html
小郡肝火锅点餐系统代码实现(部分)相关推荐
- 小郡肝火锅点餐系统——项目文档
小组成员:李靖 李凤莲 课程设计报告 学 号 201610411111 姓 名 李 靖 班 级 ...
- SSM基于微信小程序的外卖点餐系统 毕业设计-附源码2711704
基于微信小程序的外卖点餐系统的设计与实现 摘要 立足于当下餐饮行业现有的点餐模式,分析传统APP点餐的运作流程,结合微信小程序的特点设计新型的外卖点餐系统.近几年,人们生活水平日益提升,但工作强度和压 ...
- ssm基于微信小程序的外卖点餐系统的设计与实现毕业设计-附源码211704
摘要 立足于当下餐饮行业现有的点餐模式,分析传统APP点餐的运作流程,结合微信小程序的特点设计新型的外卖点餐系统.近几年,人们生活水平日益提升,但工作强度和压力不断增强,尤其是对于上班族而言,到餐厅吃 ...
- 基于SpringBoot和微信小程序的餐馆点餐系统的设计和实现
作者主页:Designer 小郑 作者简介:Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue.SpringBoot和微信小程序).系统定制.远程技术指导. ...
- 【计算机毕业设计】基于微信小程序的外卖点餐系统
技术栈:前端微信小程序.后端JAVA语言 SpringBoot框架 Redis缓存技术 MySQL关系型数据库 毕设帮助.技术解答.源码获取(有偿),联系方式见文末. 本课题将设计基于微信小程序的外卖 ...
- 微信扫码点餐小程序springboot外卖点餐系统源码和论文
开发工具: 后端:idea 用户端:微信开发者工具 数据库 :mysql5.7+ 技术:java springboot mybatis 微信原生技术 角色: 管理员 多商家 用户 ...
- 全新霸王餐小程序、外卖霸王餐程序代码源码|美团/饿了么霸王餐系统 粉丝裂变分销,独立商家端
小程序界面 [微信扫码]打开小程序,修改定位到湖北省宜昌市夷陵区云计算中心,即可查看演示活动数据 管理后台界面 链接地址: https://www.ab2c.cn. 搭建准备 认证公众号(服务号),需 ...
- 微信小程序手机订餐点餐系统(微信小程序,前台,后台)
后台技术框架: ssm mysql vue 小程序技术框架: wxml wxss js json 手机订餐点餐(微信小程序,前台,后台) 开发工具: wechat_devtools, IDEA, ...
- python点餐系统代码_Python学习手册(第4版).1
装饰器就是一个给对象添加额外功能的函数,其本质是函数.它的基本构造:高阶函数+函数嵌套+闭包. 装饰器 即在代码运行期间动态增加功能的方式. 3大条件: 1. 函数可作为对象,赋值给变量,也就是函数可 ...
- springboot+mysql+微信小程序点餐系统-计算机毕业设计源码65933
摘 要 点餐系统小程序采用B/S模式.采用JAVA语言.SSM框架.mysql数据库.小程序框架uniapp等开工具.促进了点餐系统小程序的业务发展.与传统线下点餐相比,点餐微信小程序不但节省了商家 ...
最新文章
- 数字图像处理——第五章 图像复原与重建
- Vue-员工管理系统
- java反射 基本知识
- 小结-python连接redis的基本配置-解决远程连接问题
- IDEA创建Maven Web 项目
- django解决页面跳转问题
- 本机web开发环境的搭建--nginx篇
- 楷书书法规则_楷书笔画书写八大规律
- Fastdfs读取文件内容
- 你真的理解this吗
- python动画精灵_Python小课堂第18课:如何使用Pygame做动画精灵和碰撞检测
- 缓存Cache-Control
- AprilTag: A robust and flexible visual fiducial system论文解读
- 转 http://wenku.baidu.com/view/8719b5dad15abe23482f4d9e.html
- 关于tink的碰撞检测类【1】
- 2020年司钻(井下)考试题库及司钻(井下)考试APP
- Cydia中几款推荐的app
- ffmpeg 为取经而来_清华,那个穿越百年而来的白衣少年
- 真正影响光辉的是灯里的油
- Hadoop各配置文件详解
热门文章
- sap 双计量单位_维护计量单位的描述
- Zephry Uart Device详解
- 苹果电脑python编译器_Mac版-python环境配置(二):编译器pycharm下载安装
- echarts最简单的南丁格尔玫瑰图+图例
- NeuSE: A Neural Snapshot Ensemble Method for Collaborative Filtering(阅读论文笔记)
- python 分割线_用Python打印分割线练习
- android studio拼音转汉字,汉字转拼音,TinyPinyin、Pinyin4j与JPinyin哪个库更快
- 能量,功率,能量谱和功率谱密度
- 网页进行pdf打印_将多个pdf文档合并为一个pdf
- WIN10计算机不支持3D游戏怎么办,教您如何在win10系统中启用3D加速?