1、配置MySQL的驱动
<!-- mysql的驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency> (建议用高点的版本)
2、提前创建数据库(表)
本人使用navicat
3、连接数据库
输入用户名和密码
如果出现Server returns invalid timezone. Need to set 'serverTimezone' property.
4、实例1
public class TestJdbc { public static void main(String[] args) throws ClassNotFoundException, SQLException { //配置信息 //解决中文乱码的问题:useUnicode=true&characterEncoding=utf-8 String url="jdbc:mysql://localhost:3306/jdbc? (显示未连接数据库,就检查这个)useUnicode=true&characterEncoding=utf-8"; String username="root"; String password="xiaocong"; //1.加载驱动 (.cj记得加上) Class.forName("com.mysql.cj.jdbc.Driver"); //2.连接数据库,代表数据库 Connection connection = DriverManager.getConnection(url, username, password); //3.向数据库发送SQL的对象:CRUD Statement statement = connection.createStatement(); //4.编写SQL String sql="select*from users;"; //5.执行SQL,返回一个结果集 ResultSet resultSet = statement.executeQuery(sql); while(resultSet.next()){ System.out.println("id="+resultSet.getObject("id")); System.out.println("name="+resultSet.getObject("name")); System.out.println("password="+resultSet.getObject("password")); System.out.println("email="+resultSet.getObject("email")); } //6.关闭连接,释放资源(一定要做)先开后关 resultSet.close(); statement.close(); connection.close(); } }
5、实例2
public class TestJdbc2 { public static void main(String[] args) throws ClassNotFoundException, SQLException { //配置信息 //解决中文乱码的问题:useUnicode=true&characterEncoding=utf-8 String url="jdbc:mysql://localhost:3306/jdbc?useUnicode=true&characterEncoding=utf-8"; String username="root"; String password="xiaocong"; //1.加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); //2.连接数据库,代表数据库 Connection connection = DriverManager.getConnection(url, username, password); //3.编写SQL String sql="insert into users(id,name,password,email)values (?,?,?,?)"; //4.预编译 PreparedStatement preparedStatement = connection.prepareStatement(sql); preparedStatement.setInt(1,4); preparedStatement.setString(2,"赵六"); preparedStatement.setString(3,"27454"); preparedStatement.setString(4,"zl@qq.com"); //5.执行SQl(增删改用executeUpdate) int i = preparedStatement.executeUpdate(); if(i>0){ System.out.println("插入成功@"); } //6.关闭连接,释放资源(一定要做)先开后关 preparedStatement.close(); connection.close(); } }