JDBC使用简介

本文仅针对MySQL,其他数据库类似。

首先你需要下载mysql-connector-java,地址为 https://dev.mysql.com/downloads/connector/j/
解压你下载的文件,文件夹中mysql-connector-java-5.1.38-bin.jar就是连接mysql所需要的java包了。

在项目中使用jar有两种方式:
  1. 将mysql-connector-java-5.1.38-bin.jar添加到CLASSPATH中。如果你使用的是IntelliJ,在File -> Project Structure -> Modules -> Dependencies中添加。或者,如果你不使用IntelliJ,则在命令行中直接输入
    export CLASSPATH=${CLASSPATH}:~/Downloads/mysql-connector-java-5.1.38.jar
  2. 将mysql-connector-java-5.1.38-bin.jar中的文件取出放到你的项目里。
    jar -xf mysql-connector-java-5.1.38.jar

基本使用方法:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.PreparedStatement;
try {
     Class.forName("com.mysql.jdbc.Driver");
} catch(ClassNotFoundException e) {}
try {
     Connection conn = DriverManager.getConnection(“jdbc:mysql://host:port/database", username, password);
     conn.setAutoCommit(false);
     Statement stmt = conn.createStatement();
     ResultSet rs = stmt.executeQuery("select PaperID, URL from PaperUrls");
     while(rs.next()){
          String url = rs.getString("URL");
          System.out.println(url);
     }
} catch(SQLException e) {}

java.sql是java自带的,里面包含公共的接口和类型。
Class.forName(“com.mysql.jdbc.Driver”)是用来将Driver类型加载到JVM中的。用import com.mysql.jdbc.Driver; Driver d = new Driver();可以达到相同的效果。
setAutoCommit(false)用于关闭事务自动提交,你需要用conn.commit()手动提交,或者用conn.rollback()回滚。

在需要向数据库中插入行时,PreparedStatement是一个很好的选择。

PreparedStatement pStmt = conn.prepareStatement("insert into UrlPdf values(?,?)");
pStmt.setString(1, url);
pStmt.setBinaryStream(2, input);
pStmt.executeUpdate();
conn.commit();

PreparedStatement可以自动对字符进行转义,防止SQL注入。 

你可能感兴趣的:(JDBC使用简介)