Java熟食包点系统实战

功能描述 

创建一个熟食包点的数据库,我的任务是通过名称修改数据库内容的功能;对eatmarket中的eat数据表进行修改;通过查找名称(eatname)对其他信息如价格和库存进行修改(eatprice spare),将数据表中的内容实现更新;在UI界面创建一个与用户交互的菜单,会有提示告知用户需要进行的具体操作,如输入特定数字进入修改功能,然后输入修改名称,选择要修改的某个内容,输入想要修改的新内容,即可在数据表当中实现内容的更改。 ​

二、功能实现 

JDBCUtils.java

package foodmarketMis;​
 
import java.sql.Connection;​
import java.sql.DriverManager;​
import java.sql.SQLException;​
 
public class JDBCUtils {​
 public static final String DRIVER_CLASS_NAME = "com.mysql.jdbc.Driver";​
 public static final String URL = "jdbc:mysql://localhost:3306/foodmarket?characterEncoding=UTF-8";​
 public static final String USERNAME = "root";​
 public static final String PASSWORD = "321";​
 public static Connection conn=null ;  ​
  ​
 //使用静态代码块给静态常量成员赋初值​
 static{​
  try {​
   Class.forName("com.mysql.jdbc.Driver");​
   conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);​
  } catch (ClassNotFoundException e) {​
   // TODO Auto-generated catch block​
   e.printStackTrace();​
  } catch (SQLException e) {​
   // TODO Auto-generated catch block​
   e.printStackTrace();​
  }​
 }​
 public static Connection getConnection(){​
  return conn;​
 }​
}

UserBean.java 

public class UserBean {​
 private String uid;​
 private String eatname;//用户名​
 private String eatprice;//密码​
 private String spare;​
 //构造方法,带参数​
 public UserBean(String uid, String eatname, String eatprice,String spare) {​
 this.uid = uid;​
 this.eatname = eatname;​
 this.eatprice = eatprice;​
 this.spare = spare;​
 }​
 //set和get​
 public String getNumber() {​
 return uid;​
 }​
 public void setNumber(String uid) {​
 this.uid = uid;​
 }​
 public String geteatname() {​
 return eatname;​
 }​
 public void setName(String eatname) {​
 this.eatname = eatname;​
 }​
 public String geteatprice() {​
 return eatprice;​
 }​
 public void seteatprice(String eatprice) {​
 this.eatprice = eatprice;​
 }​
 
 public String getspare() {​
 return spare;​
 }​
 public void setspare(String spare) {​
 this.spare = spare;​
 }​
 @Override​
 public String toString() {​
 // TODO Auto-generated method stub​
 return uid+"\t---\t"+eatname+"\t---\t"+eatprice+"\t---\t"+spare;​
 }​
}

UserDAO.java 

//import com.mysql.jdbc.Connection;​
import java.sql.Connection;​
import java.sql.ResultSet;​
import java.sql.SQLException;​
import java.sql.Statement;​
import java.sql.PreparedStatement;​
public class UserDAO {​
 //Connection conn=(Connection) JDBCUtlis.getConnection();​
 Connection conn = (Connection) JDBCUtils.getConnection();​
 public void searchByupdatename(UserBean user) throws SQLException {​
 //SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'​
 //String sql ="update eat(uid,eatname,eatprice,spare) VALUES(?,?,?,?)";​
 String sql ="update eat set uid=?,eatprice=?,spare=? where eatname=?";​
 PreparedStatement pstmt =(PreparedStatement) conn.prepareStatement(sql);​
 
 pstmt.setString(1, user.getNumber());​
 pstmt.setString(2, user.geteatprice());​
 pstmt.setString(3, user.getspare());​
 pstmt.setString(4, user.geteatname());​
 pstmt.executeUpdate();​
 }​
}

UserSerivce.java 

import java.sql.ResultSet;​
import java.sql.SQLException;​
public class UserService {​
 UserDAO dao = new UserDAO();​
public void updatename(UserBean user) throws SQLException {​
 // TODO Auto-generated method stub​
 dao.searchByupdatename(user);​
 }​
}

UserUI.java 

import java.sql.ResultSet;​
import java.sql.SQLException;​
import java.util.Scanner;​
 
public class UserUI {​
 static UserService service = new UserService();​
 public static void main(String[] args) throws SQLException {​
 // TODO Auto-generated method stub​
 boolean flag=true;​
 while (flag) {​
 //菜单​
 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.print("请输入数字,选择菜单功能:");​
 
 // 输入选项​
 int inputNumber;​
 Scanner input = new Scanner(System.in);​
 inputNumber = input.nextInt();// 输入整数​
 switch (inputNumber) {​
 case 1:​
 addUser();​
 break;​
 case 2:​
 deletezhong();​
 break;​
 case 3:​
 updatazhong();​
 break;​
 case 4:​
 searchAllUserxian();​
 break;​
 case 5:​
 flag=false;​
 break;​
 }​
 }​
 }​
// 修改中间​
 private static void updatazhong() throws SQLException {​
 System.out.println("--1-按照编号修改 ------");​
 System.out.println("--2-按照名称修改 ------");​
 int inputNumber;​
 Scanner input = new Scanner(System.in);​
 inputNumber = input.nextInt();// 输入整数​
 switch (inputNumber) {​
 case 1:​
 updateid();​
 break;​
 case 2:​
 updatename();​
 break;​
 }​
 }​
 //按照名称修改​
 private static void updatename() throws SQLException {​
 // TODO Auto-generated method stub​
 System.out.println("输入要修改的食物名称:");​
 Scanner in = new Scanner(System.in);​
 String inputeatname=in.next();​
 UserBean user= service.searchByname(inputeatname);​
 if(user!=null)​
 {​
 System.out.println(user.getNumber()+"\t"+user.geteatname()+"\t"+user.geteatprice()+"\t"+user.getspare());​
 System.out.println("输入新的食物编号:");​
 String inputnewid=in.next();​
 user.setNumber(inputnewid);​
// System.out.println("输入新的食物名称:");​
// String inputnewname=in.next();​
// user.setName(inputnewname);​
 System.out.println("输入新的食物价格:");​
 String inputnewprice=in.next();​
 user.seteatprice(inputnewprice);​
 System.out.println("输入新的食物库存:");​
 String inputnewspare=in.next();​
 user.setspare(inputnewspare);​
 service.updatename(user);​
 }​
 else​
 {​
 System.out.println("没有找到相关信息!");​
 }​
 }​
 }

三、运行结果 

开始截图 ​

结束 ​

四、总结 

在实验过程中,有一些因为不够细心导致的错误,添加中文符号等,也有一些语法错误,通过仔细对比代码,网上搜索,观看老师的课程回放以及向小组内的同学们询问均得以解决;通过这次实验,使我的Java基础更加牢固,掌握了以前没有学会的知识点,也学会了通过Java来对数据库进行增删改查。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值