1. mysql連接驅動
mysql-connector-java-5.1.6.jar
maven配置:
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
2. 建表語句
CREATE TABLE `sms` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`host` varchar(200) DEFAULT NULL,
`TRIGGER_NAME` varchar(200) DEFAULT NULL,
`DETAIL` varchar(200) DEFAULT NULL,
`STATUS` varchar(10) DEFAULT NULL,
`type` int(11) DEFAULT '0',
`zone` varchar(200) DEFAULT NULL,
`send_type` tinyint(4) DEFAULT '0',
`sms_send_status` tinyint(4) DEFAULT '0',
`alarm_type` tinyint(4) DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
3. 數據庫表數據如下
4. JDBC的使用代碼
public class JdbcTest {
public static void main(String[] args) {
Connection connection = null;
PreparedStatement preparedStatement = null;
ResultSet res = null;
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "123456";
String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf-8";
try {
//加載數據庫驅動
Class.forName(driver);
// 通過驅動管理類獲取數據庫連接
connection = DriverManager.getConnection(url, userName, password);
// 定義sql語句, ?標識占位符
String sql = "select * from sms where id = ?";
// 獲取預處理statement
preparedStatement = connection.prepareStatement(sql);
// 設置參數, 第一個參數為sql語句中參數的需要從1開始
preparedStatement.setString(1, "3");
// 向數據庫發出sql執行查詢, 查詢出結果集
res = preparedStatement.executeQuery();
// 遍歷查詢結果集
while (res.next()) {
System.out.println(res.getString("id") + " " + res.getString("time") + " " + res.getString("host"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// 釋放資源
if (res != null) {
try {
res.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (preparedStatement != null) {
try {
preparedStatement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}