十五次作业

编写一个应用程序,输入用户名和密码,访问test数据库中t_login表(字段包括id、username、password),验证登录是否成功。

在上一题基础上,当登录成功后,将t_user表(id、name、sex、birthday)的信息进行显示(要求使用DB.java完成登录和获取t_user表中数据的操作),最后再对t_user表进行一条记录的添加操作。

 

package 刘磊的作业;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner;
/**
 * 测试类
 *
 */

public class Test {

    public static void main(String[] args) {
        MysqlDataBase db = MysqlDataBase.getInstance();
        boolean flag = false;
        Scanner scanner = new Scanner(System.in);
        String username = scanner.next();
        String passward = scanner.next();
        String sql = "SELECT * FROM t_login where username = ? AND password=?";
        ResultSet rs = db.DBQuery(sql, new Object[]{username,passward});
        try {
            if (rs.next()) {
                System.out.println("登录成功!");
                flag = true;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        if (flag) {
            sql = "select id,name,sex,birthday from t_user";
            rs = db.DBQuery(sql, new Object[]{});
            try {
                while (rs.next()) {
                    System.out.print(rs.getInt(1));
                    System.out.print("  ");
                    System.out.print(rs.getString(2));
                    System.out.print("  ");
                    if(rs.getInt(3)==0)
                    System.out.print("男");
                    else
                        System.out.println("女");
                    System.out.print("  ");
                    System.out.println(rs.getString(4));
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            String name = "刘磊1";
            int sex = 0;
            String date = "2012-01-01";
            sql = "insert into t_user (name,sex,birthday)values(?,?,?)";
            if (db.DBModify(sql, new Object[] { name, sex, date }) > 0) {
                System.out.println("更新成功");
            } else {
                System.out.println("数据未更新");
            }
        }
        
        
        
    }

}
package 刘磊的作业;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 * 
 *MySQL数据库链接类
 */
public class MysqlDataBase {
    private static MysqlDataBase db;
    private Connection con;
    private PreparedStatement ps;
    private ResultSet rs;
    static {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
    public static MysqlDataBase getInstance() {
        if (db == null) {
            db = new MysqlDataBase();
        }
        return db;
    }
    private MysqlDataBase() {
        try {
            con = DriverManager.getConnection("jdbc:mysql://localhost:3306/liulei?serverTimezone=UTC", "root", "");
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    public ResultSet DBQuery(String sql, Object[] field) {
        try {
            ps = con.prepareStatement(sql);
            if (field.length > 0) {
                for (int i = 0; i < field.length; i++) {
                    ps.setObject(i + 1, field[i]);
                }
            }
            rs = ps.executeQuery();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rs;
    }
    public int DBModify(String sql, Object[] field) {
        int n = 0;
        try {
            ps = con.prepareStatement(sql);
            if (field.length > 0)
                for (int i = 0; i < field.length; i++) {
                    ps.setObject(i + 1, field[i]);
                }
            n = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return n;
    }

    public void close() {
        try {
            if (rs != null) {
                rs.close();
            }
            ps.close();
            con.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    
}

 

 

 

猜你喜欢

转载自www.cnblogs.com/qdkogmsdlfs/p/12045980.html