15次作业

package Example12_11;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner;
import Example12_12.DB;
public class Test12_12 {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner reader = new Scanner(System.in);
        String x = reader.next();
        String y = reader.next();
        ResultSet verify;       
        ResultSet query;       
        DB db = new DB();    
        verify = db.executeSelect("select * from t_login where username = '"+x+"' and password = '"+y+"'", args);   
        try {
            if (verify.next()) {
                System.out.println("登录成功");
                System.out.println("t_user表中的信息");
                query = db.executeSelect("select * from t_user", args);      
                while(query.next()) {
                    int id = query.getInt(1);
                    String name = query.getString(2);
                    int sex = query.getInt(3);
                    String birthday = query.getString(4);
                    System.out.println("id:"+id+"\tname:"+name+"\tsex:"+sex+"\tbirthday:"+birthday);    
                }
                System.out.println("请输入需要添加的记录:");
                int newid = reader.nextInt();
                String newname = reader.next();
                int newsex = reader.nextInt();
                String newdate = reader.next();
                String sql="insert into t_user(id,name,sex,birthday) values("+newid+",'"+newname+"',"+newsex+",'"+newdate+"')";   
                int n = db.executeModify(sql, args);    
                if(n>0) {
                    System.out.println("数据插入成功");
                }else {
                    System.out.println("数据插入失败");
                }
            }else {
                System.out.println("登陆失败");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

}
复制代码
DB.java代码:

复制代码
package Example12_12;
import java.sql.*;
public class DB {
    private Connection con;
    private PreparedStatement pre;
    private ResultSet rs;
    private static DB db;
    static {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
    public DB() {
        try {
            con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase?useSSL=false&serverTimezone=UTC","root","1234");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    public static DB getInstance() {
        if(db == null) {
            db = new DB();
        }
        return db;
    }
    public ResultSet executeSelect (String sql, Object[] args) {
        try {
            pre = con.prepareStatement(sql);
            if(args.length !=0) {
                for(int i = 0;i< args.length;i++) {
                    pre.setObject(i+1, args[i]);
                }
            }
            rs = pre.executeQuery();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rs;
    }
    public int executeModify (String sql, Object[] args) {
        int n = 0;
        try {
            pre = con.prepareStatement(sql);
            if(args.length !=0) {
                for(int i = 0;i< args.length;i++) {
                    pre.setObject(i+1, args[i]);
                }
            }
            n = pre.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return n;
    }
    public void close() {
        try {
            if (rs != null) {
                rs.close();
            }
            pre.close();
            con.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    
}

posted on 2019-12-15 21:43  张九川  阅读(203)  评论(0编辑  收藏  举报

导航