文章目录
- 一、开发环境
- 二、创建数据表
- 1. 用命令行创建
- 三、创建java工程
- 1.在IDEA中创建一个工程:Fir (工程名自拟)
- 2.在Fir工程下,创建lib文件夹(存在jar驱动文件)
- 3.导入mysql驱动(mysql-connector-java-5.1.13-bin.jar)
- 4.载入Build Path,否则会出错
- 5.在src下创建一个包,包内创建一个class类
- 6.注意事项
- 7.讲解
- 7.1 Java连接Mysql的代码如下:
- 7.2Mysql执行查看语句
- 7.3Mysql插入语句
- 8.完整TestJDBC.java文件(查看)
一、开发环境
Java版本:Java 18
IDEA版本:Intellij IDEA Community 2022.2
MySQL版本:MySQL 5.7
二、创建数据表
1. 用命令行创建
CREATE DATABASE test;
CREATE TABLE stu(
id INT,
name CHAR(2),
sex CHAR(1)
);
三、创建java工程
1.在IDEA中创建一个工程:Fir (工程名自拟)
2.在Fir工程下,创建lib文件夹(存在jar驱动文件)
鼠标右键点击Fir工程 ——> New ——>Folder、
文件夹命名为lib
3.导入mysql驱动(mysql-connector-java-5.1.13-bin.jar)
把mysql-connector-java-5.1.13-bin.jar文件,复制到jdbc工程下的lib文件夹里。
ps:如果下载不了jar文件,可以私信我,或直接百度也行
4.载入Build Path,否则会出错
鼠标右键点击该驱动——>Build Path——>Add to Build Path
5.在src下创建一个包,包内创建一个class类
鼠标右键点击src → New → package,包名自己任意取 如jdbc;
再在该包下创建一个class类,名字为TestJDBC
6.注意事项
7.讲解
7.1 Java连接Mysql的代码如下:
private static String url = "jdbc:mysql://localhost:3306/test";
private static String userName = "root";
private static String password = "root";//密码自己填写
public static void main(String[] args) {
MysqlConnectTest mysql= new MysqlConnectTest();
Connection con = mysql.getConnection();
if(con==null){
System.out.println("与mysql数据库连接失败!");
}else{
System.out.println("与mysql数据库连接成功!");
}
}
7.2Mysql执行查看语句
Statement sts = null;
String sql = "select * from stu ";
ResultSet resul = null;
try {
sts = (Statement) con.createStatement();
resul = sts.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
}
System.out.println("查询的结果如下:");
while(resul.next()){
System.out.print("[");
System.out.print( resultSet.getInt(1)+"\t"); //第一列 对应的字段
// System.out.print( resultSet.getInt("id")+"\t");
System.out.print( resultSet.getString("name")+"\t");
System.out.print( resultSet.getString("sex")+"\t");
System.out.println("]");
}
7.3Mysql插入语句
String sql = "insert into stu values (6,'李白','女')";
int i = 0;
try {
sts = (Statement) con.createStatement();
i = sts.executeUpdate(sql);
if(i == -1){
System.out.println("插入失敗");
}else{
System.out.println("插入成功");
}
} catch (SQLException e) {
e.printStackTrace();
}
8.完整TestJDBC.java文件(查看)
package jdbc;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class TestJDBC {
public static void main(String[] args) {
// TODO Auto-generated method stub
Connection conn = null;
try {
//1.数据库连接的4个基本要素
//①JDBC URL用于标识一个被注册的驱动程序,驱动程序管理器通过这个URL选择正确的驱动程序,从而建立到数据库的连接;
//jdbc:表示URL中的协议
//mysql:子协议,用于标识mysql数据库驱动程序
//localhost:本机的IP地址
//3306:mysql 默认端口号
//test:表示访问test数据库
String url = "jdbc:mysql://localhost:3306/test";
//user:登录数据库的用户名
String user = "root"; //自己的账号
//password:用户名对应的密码,这些都是自己之前设定的
String password = " "; //自己的密码
//mySql的驱动:com.mysql.jdbc.Driver
String driverName = "com.mysql.jdbc.Driver";
//2.实例化Driver
Class clazz = Class.forName(driverName);
Driver driver = (Driver) clazz.newInstance();
//3.通过DriverManager来注册驱动
DriverManager.registerDriver(driver);
//4.通过DriverManager的getConnection方法,获取Connection类的对象
conn = DriverManager.getConnection(url, user, password);
//5.打印出conn对象
System.out.println(conn);
//获取statement对象
/*Statement statement = connection.createStatement();*/
String sql = "select * from stu";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
//执行语句
/**/
ResultSet resultSet = preparedStatement.executeQuery(sql);
//返回地数据存储在result中
while (resultSet.next()){
System.out.print("[");
System.out.print( resultSet.getInt(1)+"\t"); //第一列 对应的字段
// System.out.print( resultSet.getInt("id")+"\t");
System.out.print( resultSet.getString("name")+"\t");
System.out.print( resultSet.getString("sex")+"\t");
System.out.println("]");
}
if (resultSet != null){
resultSet.close();
}
if(preparedStatement != null){
preparedStatement.close();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
//当conn不为空时
if(conn != null)
//关闭conn资源
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
注:该方法并非连接MySQL的最佳方法,但是对于入门者,比较容易理解
注意:
- 要填上自己数据库账号,和 密码;
- 要创建test数据库;
- 要创建stu表;
- stu表的属性 有 id ,name, sex
否则需要自己修改代码。