前期准备:

1 首先你需要安装mysql数据库软件

2 从mysql官网下载mysql JDBC的驱动程序,驱动程序要与mysql版本一致,但我没有找到与我mysql版本一致的驱动。我只看到了 5.1.44版本的,下来试试吧。下载后解压得到mysql-connector-java-5.1.44-bin.jar文件

3 设置驱动程序类路径

方法一:在环境变量classpath中添加驱动程序路径信息。

方法二:把驱动程序复制到应用程序类路径下(项目的src目录)。然后在eclipse中,右击项目名,在下拉菜单中,选择 build path -> configure build path 打开对话框后选择 Libraries 标签,单击 Add JARs 选择刚才放在src目录下的jar包点击 OK 完成配置。

如果是WEB项目,把驱动程序复制到webRoot\WEB-INF\lib 目录下就可以了,eclipse会自动把lib目录下的类库添加到类路径中。

创建测试数据库并添加数据:

CREATE TABLE `user` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `name` varchar(20) NOT NULL,
 `phone` varchar(15) NOT NULL,
 PRIMARY KEY (`id`),
 KEY `name` (`name`),
 KEY `phone` (`phone`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


INSERT INTO `user` (`id`, `name`, `phone`) VALUES
(1, 'king', '13100000000'),
(2, 'queen', '13111111111');


基本使用


package JdbcMysql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MysqlOperator {
// java jdbc操作mysql数据库基本步骤
// 1 加载JDBC驱动
// 2 创建数据库连接
// 3 创建Statement对象
// 4 执行sql语句,返回结果集对象ResultSet
// 5 处理返回的结果
// 6 关闭创建的各对象
final static String driver = "com.mysql.jdbc.Driver";
final static String url = "jdbc:mysql://localhost:3306/test";
final static String user = "root";
final static String password = "root";

// 加载驱动程序
static {
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws ClassNotFoundException, SQLException {

// 创建连接
Connection conn = getConn();
if(conn==null){
System.out.println("创建连接失败");
System.exit(0);
}
// 创建Statement对象
Statement stmt = conn.createStatement();
String sql = "select * from user";
// 执行sql查询
ResultSet res = stmt.executeQuery(sql);
// 从结果集中取数据 可以按列名称取值 也可以按索引号取值
while(res.next()){
System.out.println(res.getString("name")+"---"+res.getString("phone"));
}

// PreparedStatement 的基本用法 带条件查询
ResultSet res1 = getResultSetByPhone("13100000000",conn);
while(res1.next()){
System.out.println(res1.getString("name")+"---"+res1.getString("phone"));
}

// 关闭连接
closeConn(conn);

}

// 创建连接
public static Connection getConn() throws SQLException{
Connection conn = null;
conn = DriverManager.getConnection(url,user,password);
return conn;
}

// 关闭连接
public static void closeConn(Connection conn) throws SQLException{
if(conn!=null&&!conn.isClosed()){
conn.close();
}
}

// 封装一个带条件查询
public static ResultSet getResultSetByPhone(String phone,Connection conn) throws SQLException{
String sql = "select * from user where phone=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, phone);
return pstmt.executeQuery();
}

}


在有了以上基础后,我们需要对涉及到的  Connection  Statement  ResultSet 对象进行深入研究,以便实现对mysql的更高级操作,比如 插入 修改 删除  调用存储过程  实现事务等。