JDBC编程

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: JDBC编程

一. 概念


JDBC,即Java Database Connectivity,java数据库连接。是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范。这个API由 java.sql.*,javax.sql.* 包中的一些类和接口组成,它为Java开发人员操作数据库提供了一个标准的API,可以为多种关系数据库提供统一访问;



二. 工作原理


JDBC 架构

分为双层架构和三层架构。


双层

1339a0a61897352b1c418bd6d9da3c54.gif

作用:此架构中,Java Applet 或应用直接访问数据源。

条件:要求 Driver 能与访问的数据库交互。

机制:用户命令传给数据库或其他数据源,随之结果被返回。

部署:数据源可以在另一台机器上,用户通过网络连接,称为 C/S配置(可以是内联网或互联网)。

三层

7c3421681f9804145ed1eb6d1cf7a489 (1).gif

侧架构特殊之处在于,引入中间层服务。


流程:命令和结构都会经过该层。


吸引:可以增加企业数据的访问控制,以及多种类型的更新;另外,也可简化应用的部署,并在多数情况下有性能优势。


  • 历史趋势: 以往,因性能问题,中间层都用 C 或 C++ 编写,随着优化编译器(将Java 字节码 转为 高效的 特定机器码)和技术的发展,如EJB,Java 开始用于中间层的开发这也让 Java 的优势突显出现出来,使用 Java 作为服务器代码语言,JDBC随之被重视。


三. JDBC编程


3.1 导入jar包

在使用JDBC之前我们要导入一个 jar包,这个包我们可以去官网下载,安装步骤如下:


1.首先在你的项目下创建一个Directory

ce3f63304a304d7e999d09b84262e139.png

2.将下载好的jar包复制粘贴到刚在创建好的Directory包下

fdcdc48e287f49e29daecf0ac9776065.png

25a99bba22e94cc18be26abdfe6168d9.png

3. 在刚刚创建好的Directory包下右键,点击Add,这样idea就能识别jar下面的内容了

f4624cd937844ee5b73266e42410db93.png

如果在jar包下能看到内容,说明就成功了:

1ecff0bd41584d19b65c0c7bfb633e63.png


JDBC编程步骤:

  • 创建并初始化一个数据源;
  • 与数据库服务器建立连接;
  • 构造SQL语句;
  • 执行SQL语句;
  • 释放必要的资源;

3.2 插入操作代码

publicclassDemo1 {
publicstaticvoidmain(String[] args) throwsSQLException {
Scannerscan=newScanner(System.in);
// 1.创建并初始化一个数据源;//DataSource是一个接口,向上转型DataSourcedataSource=newMysqlDataSource();
//向下转型        ((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/demo?characterEncoding=utf8&useSSL=false");
        ((MysqlDataSource)dataSource).setUser("root");
        ((MysqlDataSource)dataSource).setPassword("123456");
// 2.与数据库服务器建立连接;Connectionconnection=dataSource.getConnection();
System.out.println("请输入学生姓名:");
Stringname=scan.next();
System.out.println("请输入学生年龄:");
intage=scan.nextInt();
//从控制台读取用户输入的内容// 3.构造SQL语句;Stringsql="insert into student value(?,?)";
PreparedStatementstatement=connection.prepareStatement(sql);
statement.setString(1,name);
statement.setInt(2,age);
System.out.println(statement);
// 4.执行SQL语句;intret=statement.executeUpdate();
System.out.println(ret);
// 5.释放必要的资源;statement.close();
connection.close();
    }
}

3738004b1be744bcb641dfa19d73b67d.png

17a2af8876e64b43b2088350a13d1bdc.png

这这里就完成了一个简单的插入操作;


3.3 查询操作代码

publicclassSelectOperate {
publicstaticvoidmain(String[] args) throwsSQLException {
// 1.创建并初始化数据源DataSourcedataSource=newMysqlDataSource();
        ((MysqlDataSource) dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/demo?characterEncoding=utf8&useSSL=false");
        ((MysqlDataSource) dataSource).setUser("root");
        ((MysqlDataSource) dataSource).setPassword("123456");
// 2.建立连接Connectionconnection=dataSource.getConnection();
// 3.构造SQL语句Stringsql="select * from student";
PreparedStatementstatement=connection.prepareStatement(sql);
// 4.执行SQL语句ResultSetresultSet=statement.executeQuery();
// 5.遍历结果while (resultSet.next()) {
Stringname=resultSet.getString("name");
intage=resultSet.getInt("age");
System.out.println("name = "+name+"\n"+" age ="+age);
        }
// 6.释放资源resultSet.close();
statement.close();
connection.close();
    }
}

32b149d0293f4732861f7e7dfbd6516c.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
Java 数据库连接 网络安全
JDBC数据库编程(java实训报告)
这篇文章是关于JDBC数据库编程的实训报告,涵盖了实验要求、实验环境、实验内容和总结。文中详细介绍了如何使用Java JDBC技术连接数据库,并进行增删改查等基本操作。实验内容包括建立数据库连接、查询、添加、删除和修改数据,每个部分都提供了相应的Java代码示例和操作测试结果截图。作者在总结中分享了在实验过程中遇到的问题和解决方案,以及对Java与数据库连接操作的掌握情况。
JDBC数据库编程(java实训报告)
|
4月前
|
SQL Java 关系型数据库
Java中的JDBC编程详解
Java中的JDBC编程详解
|
4月前
|
SQL Java 关系型数据库
Java中的JDBC编程详解
Java中的JDBC编程详解
|
5月前
|
SQL XML Java
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
72 3
|
6月前
|
SQL Java 关系型数据库
Java之JDBC数据库编程
Java之JDBC数据库编程
40 2
|
6月前
|
SQL Java 关系型数据库
JDBC编程
JDBC编程
51 2
|
6月前
|
SQL Java 数据库连接
从零开启 JDBC 编程
从零开启 JDBC 编程
|
6月前
|
SQL Java 数据库连接
JDBC编程相关知识(实现图书管理系统进阶版)(下)
JDBC编程相关知识(实现图书管理系统进阶版)
42 0
|
6月前
|
Java 关系型数据库 MySQL
JDBC编程相关知识(实现图书管理系统进阶版)(上)
JDBC编程相关知识(实现图书管理系统进阶版)
64 0
|
6月前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
下一篇
无影云桌面