Java中的JDBC(全网最详细讲解)!!!

JDBC是什么?

        jdbc是一种java程序用于访问关系库的api.他允许程序员使用标准的sql语句来访问和操作关系型数据库.他是java EE平台上进行数据访问的基础.他提供了许多接口和类,使得java程序可以通过他们来访问和管理关系型数据库.

jdbc的优点

  • 具有跨平台性,jdbc可以在各种操作系统和计算机体系上运行,因此java程序和不同类型的数据库进行交互
  • JDBC是一个标准的API,提供了相同的访问关系数据库的方法,使得不同的JDBC驱动程序可以实现相同的接口,方便开发人员在不同的数据库之间进行切换
  • 通过JDBC API访问数据库,可以防止直接在代码中包含SQL语句从而造成的SQL语句注入攻击
  • JDBC还能提高高效的数据访问

jdbc的原理

  • 加载数据库驱动:在java应用程序中,首先需要加载适当的数据库驱动程序
  • 连接数据库通过getConnection()方法与数据库建立连接
  • 创建操作对象:使用java中Statement对象或者PreparedStatement对象来执行SQL语句
  • 通过上面两个对象执行SQL语句
  • 处理查询结果:使用ResultSet对象来处理从数据库返回的查询结果
  • 释放资源:通过close来释放资源(Connection,Statement,PreparedStatement三个对象)

JDBC中供程序员使用的类与接口

jar包的导入:

在根目录下创建一个lib的文件夹(如果有就不需要创建),之后将数据库的jar包放进去,然后右击该jar包,选中Add as library将其添加到项目的jar包库中.

DriverManager类:

//注册驱动并且加载驱动
DriverManager.registerDriver(new Driver())

Connection接口:

Connection conn = DriverManager.getConnection(

                "jdbc:mysql://localhost:3307/school?useunicode=true&characterEncoding=utf-8",
                "root",
                "123456");  //数据库服务器名称(地址)、端口号、数据库名称、用户名、密码须根据实际情况改变

该接口是为了将java项目对数据库进行对接,其中getConnection()中的参数分别是url,user和password,分别对应者数据库所在该计算机的地址,进入数据库的用户名和用户密码,当Connection对象被创建的时候,我们才能对数据进行sql操作.

对数据库的操作:

对数据库操作有两种方法:一种是通过Statement对象进行操作,一种是通过PrepareStatement对象进行操作.

Statement接口:

当只有一条sql语句的时候,可以使用Statement接口,因为他的运行速度要快于预处理,但是Statement接口不防止sql注入攻击,所以它的安全性相较于预处理是比较差的

PrepareStatement接口:

当我们需要处理多条sql语句,建议使用预处理,虽然他第一次调用时候所需要的成本要大于Statement接口,但是在后面的语句中,它不仅可以实现动态sql,还可以预防sql注入攻击.

ResultSet接口:

我们通过executeQuery()方法获得的结果集ResultSet,我们可以通过其中的next()方法来通过循环一直获得该表中的数据,在循环中,我们可以通过get***(String name)来获得其中的属性.

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java,您可以使用JDBCJava Database Connectivity)来访问数据库。以下是使用JDBC访问数据库的一般步骤: 1. 导入JDBC相关的类和包。您需要导入Java提供的JDBC类和相关的数据库驱动程序包。例如,对于MySQL数据库,您可以使用`com.mysql.jdbc.Driver`类和`mysql-connector-java`驱动程序。 2. 加载数据库驱动程序。使用`Class.forName()`方法加载数据库驱动程序。例如,对于MySQL数据库,可以使用以下代码加载驱动程序: ``` Class.forName("com.mysql.jdbc.Driver"); ``` 3. 创建数据库连接。使用`DriverManager.getConnection()`方法创建一个数据库连接对象,并指定数据库的URL、用户名和密码。例如,对于MySQL数据库,可以使用以下代码创建连接: ``` String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "password"; Connection connection = DriverManager.getConnection(url, username, password); ``` 4. 创建Statement对象。使用连接对象的`createStatement()`方法创建一个Statement对象,用于执行SQL语句。 ``` Statement statement = connection.createStatement(); ``` 5. 执行SQL查询或操作。使用Statement对象的`executeQuery()`方法执行SELECT语句,并使用`executeUpdate()`方法执行INSERT、UPDATE、DELETE等更改操作。例如,执行SELECT语句并处理结果可以使用以下代码: ``` String sql = "SELECT * FROM mytable"; ResultSet resultSet = statement.executeQuery(sql); while (resultSet.next()) { // 处理每一行数据 } ``` 6. 关闭连接和资源。在完成数据库操作后,记得关闭连接和释放资源,以免造成资源泄漏。可以使用`resultSet.close()`, `statement.close()`和`connection.close()`方法来关闭相关的对象。 这只是一个简单的示例,您可以根据您使用的数据库和具体需求来编写更复杂的代码。希望这些步骤能对您有所帮助!如果您有更多问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值