jdbc详解

 

数据库连接步骤

public class JdbcDemo {
    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        String url = "jdbc:mysql://127.0.0.1:3306/test";
        String username = "root";
        String password = "your password";
        //Class.forName("com.mysql.jdbc.Driver");
        DriverManager.registerDriver(new com.mysql.jdbc.Driver());
        Connection connection = DriverManager.getConnection(url, username, password);
        String sql = "SELECT * FROM msg";
        PreparedStatement prepareStatement = connection.prepareStatement(sql);
        ResultSet resultSet = prepareStatement.executeQuery();
        resuleSet.close();
        prepareStatement.close();
        connection.close();
    }
}

注:Class.forName(“com.mysql.jdbc.Driver”); 等同于 DriverManager.registerDriver(new com.mysql.jdbc.Driver());

分析

DriverManager:该类管理数据库驱动程序。 Connection:管理数据库建立的连接。 Statement:负责将要执行的sql体局提交到数据库。 ResultSet:执行sql查询语句返回的结果集。 Class.forName(“com.mysql.jdbc.Driver”);//获得字符串参数中指定的类,并初始化该类。

PrepareStatement与Statment的比较

语法不同:PreparedStatement可以使用预编译的sql,而Statment只能使用静态的sql

效率不同: PreparedStatement可以使用sql缓存区,效率比Statment高

安全性不同: PreparedStatement可以有效防止sql注入,而Statment不能防止sql注入。