JDBC连接数据库演示

今天重新学习了JDBC连接数据库,使用的数据库是Oracle,在运行前已经手动建立了一张t_user表,建表信息如下:

create table t_user(
       card_id number(19) primary key,
       password varchar2(6),
       balance number(20,3),
       phone varchar2(12)
);

考虑到手机号不会参加数值运算,所以将其类型设定为varchar

 

Java方面主要为了将来在实际开发中可能会用到,所以尽可能写的比较完善,用户登录部分和后台插入部分基本已经写好

方法写得比较集中,实际开发中可能会把获取用户输入值的部分单独写在主方法里

查询方法和插入方法也会做成带布尔类型返回值的方法

import java.util.*;
import java.sql.*;

public class User {
    public static void main(String[] args) throws Exception {
//        login();
        add();
        }
    
    public static void login() throws Exception{
        
        //0.获取用户输入值
        @SuppressWarnings("resource")
        Scanner input = new Scanner(System.in);
        System.out.println("Please enter card id: ");
        String c = input.next();
        System.out.println("Please enter password: ");
        String p = input.next();
        
        String pass = new String();
        
        //1.加载驱动        
        Class.forName("oracle.jdbc.OracleDriver");
        
        //2.获得数据库连接
        String url = "jdbc:oracle:thin:@127.0.0.1:1521:XE";
        String user = "hr";
        String password = "hr";
        Connection conn = DriverManager.getConnection(url,user,password);
        System.out.println(conn);
        
        //3.准备SQL语句
        String insertSQL = "select * from t_accounts "
                + "where card_id = " + c;
        System.out.println(insertSQL);
        
        //4.发送SQL语句
        Statement stm = conn.createStatement();//获得发送SQL的对象
        ResultSet rs = stm.executeQuery(insertSQL);//发送查询SQL
        
        //5.处理ResultSet结果集
        while(rs.next()){
            //循环的指向所有行数据
            String passw = rs.getString("password");
            pass = passw;
        }
        
        //6.释放资源
        rs.close();
        stm.close();
        conn.close();
        
        System.out.println(pass);
        
        //7.判断用户输入值是否正确并作输出
        if(Integer.parseInt(pass) == Integer.parseInt(p))
            System.out.println("Login success");
        else
            System.out.println("Login fail, please try again");
    }
    
    
    public static void add() throws Exception{
        
        //0.获取用户输入值
        @SuppressWarnings("resource")
        Scanner input = new Scanner(System.in);
        System.out.println("Please enter card id: ");
        String c = input.next();
        System.out.println("Please enter password: ");
        String p = input.next();
        System.out.println("Please enter balance: ");
        double b = input.nextDouble();
        System.out.println("Please enter phone: ");
        String ph = input.next();
        
        //1.加载驱动        
        Class.forName("oracle.jdbc.OracleDriver");
//2.获得数据库连接 String url = "jdbc:oracle:thin:@127.0.0.1:1521:XE"; String user = "hr"; String password = "hr"; Connection conn = DriverManager.getConnection(url,user,password); System.out.println(conn);
//3.准备SQL语句 String insertSQL = "insert into t_accounts(card_id, password, balance, phoe) values("+c+", '"+p+"', "+b+", '"+ph+"')";
//4.发送SQL语句 Statement stm = conn.createStatement();//获得发送SQL的对象 int i = stm.executeUpdate(insertSQL);//发送SQl(发送增删改) System.out.println(i); //5.释放资源 stm.close(); conn.close(); //6.判断修改是否成功 if(i != 0) System.out.println("Add success"); else System.out.println("Add fail"); } }

 

控制台输出:

Please enter card id: 
100003
Please enter password: 
123456
Please enter balance: 
100000
Please enter phone: 
13007516785
oracle.jdbc.driver.T4CConnection@6438a396
1
Add success

 

转载于:https://www.cnblogs.com/cacricornus/p/5334896.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值