JavaSE高级阶段:数据库操作七部曲

6 篇文章 0 订阅
6 篇文章 0 订阅

数据库表简要介绍

tb_type(tid,tname)、tb_user(uid,username,password,tid),其中数据库表tb_type和数据库表tb_user中的外键tid在此文章中没用到。

数据库操作七部曲

在将MySQL的的驱动包成功导入后,在IDEA上对数据库进行的增、删、改、查还是实现登录功能(根据数据库表中有无这条数据来输出登录成功或登录失败),都分为以下七部曲:
1.获取数据库的驱动
2.创建数据库连接
3.写出SQL语句
4.处理SQL语句(数据库选中SQL语句并执行)
5.输出结果
6.处理结果
7.释放资源

全查功能和删除功能(举例说明数据库操作七部曲)代码

实现代码如下:

package com.erha.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Scanner;

public class Test {
    // 1. 查询tb_user这张表中的数据
    public static void printAllUser(){

        try {
            // (1) 加载数据库驱动
            Class.forName("com.mysql.jdbc.Driver");
            System.out.println("加载数据库驱动成功!");
            // (2) 创建数据库连接
            Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db_java1ssm?useSSL=true&characterEncoding=utf8", "root", "123456");
            System.out.println("数据库连接成功!");

            // (3) 准备写出SQL语句
            String sql = "SELECT * FROM tb_user";
            // (4) 数据库选中语句并执行它
            PreparedStatement pstm = conn.prepareStatement(sql);

            // (5) 产生结果
            ResultSet rs = pstm.executeQuery();

            // (6) 处理结果
            while(rs.next()){
                System.out.println("用户编号:"+rs.getInt(1)+",用户名称:"+rs.getString(2)+",用户密码:"+rs.getString(3)+",用户类型:"+rs.getInt(4));
            }

            // (7) 释放连接
            rs.close();
            pstm.close();
            conn.close();

        } catch (Exception e) {
            e.printStackTrace();
        }finally {

        }
    }

    //2.删除用户信息功能
    public static  void doDelete(int uid) {
        try {
            //1.获取数据库驱动
            Class.forName("com.mysql.jdbc.Driver");
            //2.创建数据库连接
            Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db_java1ssm?useSSL=true&characterEncoding=utf8", "root", "123456");
            //3.写出sql语句
            String sql = "DELETE FROM tb_user WHERE uid = ?";
            //4.处理sql语句(数据库选中sql语句并执行)
            PreparedStatement pstm = conn.prepareStatement(sql);
            pstm.setInt(1,uid);
            //5.产生结果
            int nums = pstm.executeUpdate();
            //6.处理结果
            if(nums>0){
                System.out.println("删除成功!"+nums+"行受影响");
            }
            else {
                System.out.println("没有该编号的用户");
            }
            //7.释放资源
            pstm.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static int doInput1(String str){
        Scanner in = new Scanner(System.in);
        System.out.println("请输入"+str+"用户编号:");
        int uid = in.nextInt();
        return uid;
    }

    //白盒测试
    public static void main(String[] args) {
        //全查功能
        printAllUser();
        //删除操作
        int uid = doInput1("删除");
        doDelete(uid);
        //全查功能
        printAllUser();
    }

}


全查功能和删除功能(举例说明数据库操作七部曲)输出结果

删除时有该用户编号:
在这里插入图片描述
删除时无该用户编号:
在这里插入图片描述

总结

IDEA连接数据库后对数据库表的增、删、改、查(包括全查和模糊查询)以及根据tb_user表中有无该用户信息输出登录成功和登录失败都是这七部曲过程,其中就只有实现细节的不同。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值