一:新建Java Project项目名为jdbc,新建Folder名为lib,将mysql-connector-java-5.1.7-bin.jar放入lib,选中右键Build Path,Add To Build Path
二:数据库中执行
建表:
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
插数:
INSERT INTO `user` VALUES (1,'张三'),(2,'李四'),(3,'王五');
三:新建类JdbcDemo
package com.jdbc.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JdbcDemo {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 通过驱动管理类获取数据库链接
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mybatis", "root", "root");
// 定义sql语句 ?表示占位符
String sql = "select * from user where username = ?";
// 获取预处理statement
ps = conn.prepareStatement(sql);
// 设置参数,第一个参数为sql语句中参数的序号(从1开始),第二个参数为设置的参数值
ps.setString(1, "王五");
// 向数据库发出sql执行查询,查询出结果集
rs = ps.executeQuery();
// 向数据库发出sql执行查询,查询出结果集
while (rs.next()) {
System.out.println(rs.getString("id") + " " + rs.getString("username"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// 释放资源
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (ps != null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
控制台输出:3 王五