栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

jdbc预习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

jdbc预习

1、为了使Java编写的程序不依赖于具体的数据库,Java提供了专门用于操作数据库的API,即JDBC(Java Data Base Connectivity)。JDBC操作不同的数据库仅仅是连接方式的上的差异而已,使用JDBC的应用程序一旦和数据库建立连接,就可以使用JDBC提供的API操作数据库

2、程序经常使用JDBC进行如下操作:

  • 与一个数据库建立连接
  • 向已连接的数据库发送SQL语句
  • 处理SQL语句返回的结果

3、使用JDBC-数据库驱动方式和数据库建立连接两个步骤

  • 加载JDBC-数据库驱动
  • 和指定的数据库建立连接

4、连接数据库

1)

使用JDBC之应用程序所驻留的计算机

应用程序--->JDBC--->1、JDBC-Oracle驱动

                                   2、JDBC-SQL Server驱动

                                   3、JDBC-MySQL驱动

--->Oracle数据库

--->SQL Server数据库

--->MySQL数据库

2)下载JDBC-MySQL数据库驱动

应用程序为了能访问MySQL数据库服务器上的数据库,必须保证应用程序所驻留的计算机上安装有相应的JDBC-MySQL数据库驱动,可以登录MySQL官方网站www.mysql.com,下载JDBC-MySQL数据库驱动。

3)加载JDBC-MySQL数据库驱动

try{Class.forName("com.mysql.jabc.Driver");

   }

catch(Exception e){}

4)连接数据库

java.sql包中的DriverManager类有两个用于建立连接的类方法(static方法)

  • Connection getConnection(java.lang.String,java.lang.String,java.lang.String)
  • Connection getConnection(java.lang.String)

这两个方法都可能抛出SQLException异常,DriverManager类调用上述方法可以和数据库建立连接,即可以返回一个Connection对象。

5)注意汉字问题

如果数据库的表中的记录有汉字,那么在建立连接时需要额外多传递一个参数characterEncoding,并取值gb2312或utf-8

String eri = "jdbc:mysql://localhost/students?useSSL=true&characterEncoding=utf-8";

con = DriverManager.getConnection(uri,"root","");//连接代码

5、查询操作

1)向数据库发送SQL查询语句

使用Statement声明一个SQL语句对象,让创建的连接对象con调用方法createStatement()创建这个SQL语句对象

try{ Statement sql = con.createStatement();}

catch(SQLException e ){}

2)处理查询结果

有了sql语句对象后,该对象可以调用相应的方法实现对数据库中表的查询和修改,将结果存放在一个ResultSet类声明的对象中。ResultSet对象由按“列”(字段)组织的数据行构成。ResultSet对象一次只能看到一个数据行,使用next()方法移动到下一个数据行,可以使用getXxx方法获得字段值,例如:getDouble(int columnIndex)

注:无论字段是何种属性,都可以使用getString(int columnIndex)或getString(String columnName)方法返回字段值的串显示

3)关闭连接

ResultSet对象和Connection连接对象绑定,一旦连接对象关闭,ResultSet对象中的数据立刻消失。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/998928.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号