//小编遇到的问题所有东西都符合就是连接不上两天之后莫名其妙的阔以用啦
//以下是jdbc连接数据库的基本测试,可以拆分单独封装起来作为固定的功能
/**JDCB核心接口与类:
* 1.DriverManager:它是一个类,负责管理数据库驱动
* 2.Connection:它是一个接口,负责创建数据库的连接
* 3.PreparedStatement:它是一个接口,负责在数据库连接的基础上发送sql语句并接受返回值
* 4.ResultSet:它是一个接口,它负责将查询返回的结果放入RestultSet中
* */
public static void main(String[] args) {
// TODO Auto-generated method stub
//JDBC模板代码:
//1.加载JDBC驱动(使用Java反射加载驱动)
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//使用DriverManager类中的getConnection()方法获取Connection连接
//连接字符串:http://www.baidu.com
//连接字符串:mysql jdbc协议 本机IP地址 mysql端口号 数据库名 指定字符集
try {
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/scott?characterEncoding=utf-8&serverTimezone=UTC","root","root");
PreparedStatement pst = con.prepareStatement("select * from dept");
ResultSet rs = pst.executeQuery();
//将rs中的数据取出
/*ResultSet中就是一张虚拟的表,表中有一个指针(游标)
* 此指针默认指向第一行的上部,使用next()方法判断指针下面是否有记录,有返回true 没有返回false 并将指针向下移动
* */
while(rs.next()){
int deptno = rs.getInt("deptno");
String dname = rs.getString("dname");
String loc = rs.getString("loc");
System.out.println(deptno+"\t"+dname+"\t"+loc);
}
//关闭资源
rs.close();
pst.close();
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}