package com.itheima.jdbc;
import javax.xml.transform.Result;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
/*
程序耦合
耦合:理解为程序间的依赖关系
(1)类之间的依赖
(2)方法间的依赖
解耦:降低程序间的依赖关系
实际开发中:
应该做到:编译期不依赖,运行时才依赖
解耦的思路:
1、使用反射来创建对象,而避免使用new
2、通过读取配置文件来获取要创建的对象全限定类名
*/
public class JDBCDemo1 {
public static void main(String[] args)throws Exception {
// 这是连接JDBC的步骤
// 1、注册驱动
// DriverManager.registerDriver((new com.mysql.jdbc.Driver()));
DriverManager.registerDriver((new com.mysql.cj.jdbc.Driver()));//依赖具体的类
// Class.forName("com.mysql.cj.jdbc.Driver");这个和上面的效果一致,但是这个是字符串的形式,这个是依赖的一个字符串,来减少他们之间的耦合
// 这个缺点,如果我要换这个地方的内容怎么办呢?是不是很不方便,那么可以 通过读取配置文件来获取要创建的对象全限定类名
// 2、获取连接
Connection conn =DriverManager.getConnection("jdbc:mysql://数localhost/数据库名","用户名","密码");
// 3、获取操作数据库的预处理结果
PreparedStatement pstm=conn.prepareStatement("select * from account");
// 4、执行SQL,得到结果集
ResultSet rs=pstm.executeQuery();
// 5、遍历结果集
while (rs.next()){
System.out.println(rs.getString("name"));
}
// 6、释放资源
rs.close();
pstm.close();
conn.close();
}
}