MySQL-java连接MySQL数据库+JDBC的使用

目录

1.准备所需要资源

2.导入驱动包

3.连接数据库步骤

首先在MySQL中创建好数据库和表

代码实现连接数据库


1.准备所需要资源

1.mysql和驱动包

我用的是5.7的mysql和5.1.49的驱动包,链接放在网盘里,需要的自取

链接:https://pan.baidu.com/s/1-OOr_Wf34v-V2Kvwm8-MtQ?pwd=ax66
提取码:ax66

2.导入驱动包

打开我们心爱的idea,创建好项目,复制驱动包粘贴到项目里面,我这里是创建了一个lib文件夹;

然后正式导入,右键驱动包,点击add as Library即可完成导入

接下来就是进行连接

3.连接数据库步骤

  1. 创建数据库连接Connection

  2. 创建操作命令Statement

  3. 使用操作命令来执行SQL

  4. 处理结果集ResultSet

  5. 释放资源

首先在MySQL中创建好数据库和表

我这里提前创建好数据库test44,表是tets66

代码实现连接数据库

复制代码
public class Test03 {

    public static void main(String[] args) throws SQLException {
        Scanner input = new Scanner(System.in);

        // 1. 创建数据源(DataSource)
        DataSource dataSource = new MysqlDataSource();
        //向下转型,低耦合
        //127.0.0.1环回ip(地址)
        //电话
        //test02为数据库名称,就是要连接的数据库
        //false代表不i需要加密
        ((MysqlDataSource) dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/test44?characterEncoding=utf8&useSSL=false");
        ((MysqlDataSource) dataSource).setUser("root"); //默认自带的用户
        ((MysqlDataSource) dataSource).setPassword("123456");

        
        // 2. 建立连接数据库服务器
        //Connection表示连接
        Connection connection = dataSource.getConnection();

        // 3. 构造操作数据库的 SQL 语句,
        System.out.println("请输入id");
        int id = input.nextInt();
        System.out.println("请输入姓名");
        int name = input.nextInt();
        //String name = input.next();;

        //不推荐的写法
       // String sql1 = "insert into test66 values("+ id +","+ name +")";
        //推荐写法
        String sql = "insert into test66 values (?,?)";//?表示占位符
        PreparedStatement preparedStatement = connection.prepareStatement(sql);  // 构造 "语句对象"
        preparedStatement.setInt(1, id);//
        preparedStatement.setInt(2, name);

        // 4. 执行 SQL语句
        //表示修改到的行数
        int n = preparedStatement.executeUpdate();
        System.out.println("n = " + n);

        // 5. 释放资源
        preparedStatement.close();
        connection.close();
    }
}

执行效果

相关推荐
胡写代码6 小时前
若依 + MyBatis-Plus,分页为什么悄悄失效了?
java·后端
yxlalm6 小时前
4.java秒杀项目第四课-后端商品后台接口
java·开发语言
宁之明起(B服)6 小时前
vulhub靶场(tomcat三件套:PUT写马、Ghostcat与manager弱口令)
java·tomcat
君顾16 小时前
家政派单小程序源码开发实战:从零搭建到上线全流程指南
java·开发语言·家政派单
流烟默6 小时前
HTTP 连接管理技术梳理:JDK KeepAliveCache 机制与池化选型
java·网络协议·http
阿酷tony7 小时前
视频专栏列表的防录屏水印和跑马灯效果(也可网站调用)
java·前端·音视频
烂蜻蜓7 小时前
Django入门教程(三):django-admin与manage.py命令完全指南
数据库·django·sqlite
洋不写bug7 小时前
排序(一)基础排序,插入|希尔|冒泡|直接选择排序详解
java·算法·排序算法·插入排序·冒泡排序·希尔排序·直接选择排序
xcl09257 小时前
全民健身智慧管理系统实战指南:从架构设计到部署落地
java·spring boot
yunlaodacom7 小时前
腾讯云国际版代理商:COS标准、低频、归档和深度归档怎么选?存储成本与数据取回区别
数据库·云计算·腾讯云