简单的jdbc操作
Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来
规范客户端程序如何来访问数据库的应用程序接口, 提供了诸如查询和更新数据库中数据的方法。
JDBC也是Sun Microsystems的商标。JDBC是面向关系型数据库的。 ——来自维基百科
值得注意的一点在于JDBC其实是官方(sun公司)定义的一套操作所有关系型数据库的接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
Java连接数据库有一套必要的步骤:
下面是一个Java连接数据库的简单示例。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcDemo {
public static void main(String[] args) {
Connection conn = null;
Statement stat = null; //预先在外定义是因为方便在finally里结束
try {
Class.forName("com.mysql.cj.jdbc.Driver"); //在MySQLjar包的java.sql.Driver文件里已经调用com.mysql.cj.jdbc.Driver故可不写注册驱动
String sql = "INSERT INTO student VALUES ('林志玲',18,'女','台湾')"; //简单sql语句
conn = DriverManager.getConnection("jdbc:mysql:///DATABASES?serverTimezone=GMT","root","root");
/*这里的DATABASES与用户秘密皆为示例,需要注意的是使用新版本MySQL的JDBC驱动时会出现时区
的问题,当时看的视频没讲过这个问题,自己查了查可以在url后加?serverTimezone=GMT来解决。*/
stat = conn.createStatement();
int count = stat.executeUpdate(sql); //count接受的数据为sql语句所影响的行数
if (count > 0){
System.out.println("成功!!!");
}else {
System.out.println("失败!!!");
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(stat!=null){
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}