大道之行,天下为公。这篇文章主要讲述JAVA之MySQL数据库增删改查Java入门练手相关的知识,希望能为你提供帮助。
@[toc]
如上为基本的页面设计。
三,具体描述
3.1,添加熟食包点【JAVA之MySQL数据库增删改查Java入门练手】
文章图片
上述代码块解释:
终端输入数字1进入adduser方法,执行添加操作。
依次输入熟食编号,熟食名称,熟食价格,熟食库存。
service.addUser(uid, eatname, eatprice, spare);
调用service的方法进行添加。
3.1.1,service.addUser方法
public void addUser(String uid, String eatname, String eatprice, String spare) throws SQLException
dao.addUser(uid, eatname, eatprice, spare);
接受ui传递的四个属性值,调用dao,进行添加。
起了一个中间传递的作用。
3.1.2,dao方法执行添加sql
添加一条记录。
文章图片
上述代码块解释:
PreparedStatement:是包中的一个接口,继承Statement,里面有已编译的 SQL 语句。
我觉得他的作用就是简化sql繁琐的拼接过程,方便使用。
里面的sql语句里的?就是他的功劳,提高代码的可读性和可维护性。
执行INSERT 添加sql语句。
后使用executeUpdate抽象方法,返回更新计数。
3.2,删除熟食包点按照编号删除和按照名称删除基本差不多,我们已按照编号删除来写一下。
ui核心代码:
Scanner input = new Scanner(System.in);
int a = input.nextInt();
int m = service.delete(a);
把我们需要删除的id输入,存储到变量a,执行service.delete方法,传递a给service类。
3.2.1,service.delete方法
public int delete(int a) throws SQLException
// TODO Auto-generated method stub
return dao.deletewww(a);
依然是传递作用哈。调用dao,进行删除。
3.2.2,dao方法执行删除sql
public int deletewww(int a) throws SQLException
String sql = "DELETE FROM eat WHERE uid=?";
PreparedStatement pstmt = (PreparedStatement) conn.prepareStatement(sql);
pstmt.setInt(1, a);
return pstmt.executeUpdate();
如上代码解释:
较为简单获取传递的目标id值,执行删除sql语句。
后使用executeUpdate抽象方法,返回更新计数。
3.3,查询熟食包点举例:按照熟食编号查询
文章图片
上述代码块解释:
把终端输入的查询目标id存入变量inputeatId,后执行:
UserBean user= service.searchByid(inputeatId);
调用service的方法进行查询。
3.3.1,service.searchByid方法
和上文一样,不多说了,传递的作用。
目标dao.searchByid。
3.2.2,dao方法执行查询sql
文章图片
上述代码块解释:
executeQuery()方法来下达select指令以查询数据库。
rs.next():指针指向下一条记录,如果有记录,返回true
user=new UserBean(u,n, psw,s);
传入UserBean实体类。
如果传递的user不为空,执行输出语句。
System.out.format("%-2s %-8s %-5s %-5s"+\\n,"食品编号","食物名称","食物价格","食品库存");
。。。
System.out.format("%-8s %-8s %-8s %-5s "+\\n,user.getNumber(),user.geteatname(),user.geteatprice(),user.getspare());
为了规范输出,对其操作。
3.4,修改熟食包点以按照编号修改为例
文章图片
上述代码块解释:
前面和查询操作一样,先执行查询操作,找到目标值。
System.out.println(user.getNumber()+"\\t"+user.geteatname()+"\\t"+user.geteatprice()+"\\t"+user.getspare());
输出目标的查询结果(和上文查询操作一模一样)。
之后输入输入新的食物名称,输入新的食物价格,输入新的食物库存。
后执行updateid方法。
3.4.1,service.updateid方法
和上文一样,不多说了,传递的作用。
调用dao的searchByupdateid
3.4.2,dao方法执行更新sql
String sql ="update eat set eatname=?,eatprice=?,spare=? where uid=?";
PreparedStatement pstmt =(PreparedStatement) conn.prepareStatement(sql);
使用PreparedStatemen接口,继承Statement。
执行updatesql更新语句。
将传递来的新目标变量,存入数据库中。
3.5排序熟食包点以按照按照价格排序为例。
System.out.println("按照价格排序:");
ResultSet rs = service.sortprice();
先执行service.sortprice方法。
3.5.1,service.updateid方法
和上文一样,不多说了,传递的作用。
调用dao的dao.sortprice
3.5.2,dao方法执行排序sql
public ResultSet sortprice() throws SQLException
Statement stmt = conn.createStatement();
//String sql = "select * from eat";
//表名
String sql ="select * from eat order by eatprice desc";
ResultSet rs = stmt.executeQuery(sql);
return rs;
上述代码解释:
执行排序sql语句以eatprice为目标建执行降序排序操作。
返回排序后的对象。
3.5.3,返回ui输出排序后
文章图片
while遍历结果集。
规定每一个元素占位符大小,为了美观好看,整齐。
文章图片
推荐阅读
- Windows 快捷使用基础 博文目录
- Linux 入门篇——常用命令学习
- Python "爬虫"出发前的装备之简单实用的 Requests 模块
- Python一网打尽<排序算法;之堆排序算法中的树
- Linux如何设置Centos启动默认使用的内核
- 敏捷常见的面试题有哪些(问题和答案解答)
- 面试技巧(Jenkins常见面试题和答案集锦)
- 面试技巧总结(Java常见面试题和答案合集)
- Ansible经典面试题有哪些(问题和答案解析)