满堂花醉三千客,一剑霜寒十四州。这篇文章主要讲述Java熟食包点系统实战相关的知识,希望能为你提供帮助。
功能描述?
创建一个熟食包点的数据库,我的任务是通过名称修改数据库内容的功能;对eatmarket中的eat数据表进行修改;通过查找名称(eatname)对其他信息如价格和库存进行修改(eatprice spare),将数据表中的内容实现更新;在UI界面创建一个与用户交互的菜单,会有提示告知用户需要进行的具体操作,如输入特定数字进入修改功能,然后输入修改名称,选择要修改的某个内容,输入想要修改的新内容,即可在数据表当中实现内容的更改。?
二、功能实现?
JDBCUtils.javapackage 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基础更加牢固,掌握了以前没有学会的知识点,也学会了通过Java来对数据库进行增删改查。?
推荐阅读
- Qt软件开发_解决中文路径无法识别问题
- DDK build的时候C2220警告当错误处理
- 重磅!Spring Boot 2.7 正式发布,一大波新特性,看完我彻底躺平了。。
- 运行“adb shell wm density 240”以更改Android设备密度时出错
- Android TextView没有包装文本
- 如何更改android地图中的圆圈颜色
- Android架构组件GithubBrowserSample单元测试理解
- Android(Mockito(2.0.2-beta) - 无法模拟/间谍最后的课程)
- Android Mockito如何模拟资源