初识JDBC
来源:互联网 发布:中国产能利用率数据 编辑:程序博客网 时间:2024/05/20 20:17
前言
我们首次接触数据库的时候在学生信息管理系统中,之后在我们的学习过程中,对于数据库我们也了解越来越深,体会到了程序设计中离不开数据库的支持,每个程序的开发都是使用数据保存数据。
JDBC是一种可用于执行SQL语句的java应用程序设计接口,是连接数据库和java程序的桥梁,通过JDBCAPI可以方便地实现对各种主流数据库的操作。使用JDBC技术访问数据库可以达到查找满足条件的记录,或者数据库添加、修改、删除数据。
JDBC制定了统一的访问各类关系数据库的标准接口,为各个数据库厂商提供了标准接口的实现。但是JDBC并不能直接访问数据库,需要依赖于数据库厂商提供的JDBC去驱动程序。
了解JDBC
JDBC技术具有的优点:
1、JDBC与ODBC十分相似,便于软件开发人员理解
2、JDBC使软件开发人员从复杂的驱动程序编写工作中解脱出来,可以完全专注于业务逻辑的开发
3、JDBC支持多种关系型数据库,大大增加了软件的可移植性
4、JDBC API是面向对象的,软件开发人员可以将常用的方法进行二次封装,从而提高代码的复用性
常用类和接口
1、DriverManager类:用来管理数据库中的所有驱动程序,是JDBC的管理层,作用于用户和驱动程序之间,跟踪可用驱动程序,并在数据库的驱动程序之间建立连接,DriverManager类也处理诸如驱动程序登录时间限制及登录和跟踪信息的显示等事物。DriverManager类中的方法都是静态方法,所以在程序中无须对它进行实例化,直接通过类名就可以调用。
2、Connection接口:Connection接口代表与特定的数据库的连接。要对数据表中的数据进行操作,首先要获取数据库连接,Connection实例就像在应用程序与数据之间开通了一条渠道。
3、Statement接口:Statement接口用于创建向数据库中传递SQL语句的对象,该接口提供了一些方法可以实现对数据库的常用操作。
4、PreparedStatement接口:PreparedStatement接口继承Statement,用于执行动态的SQL语句,通过PreparedStatement实例执行的SQL语句,将被预编译并保存到PrepareStatement实例中,从而可以反复地执行该SQL语句。
5、ResultSet接口:ResultSet接口类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集。
JDBC操作数据库
加载数据库驱动
访问数据库,首先要加载数据库驱动,数据库驱动只需在第一次访问数据库是加载一次。然后在每次访问数据库是创建一个Connection实例,获取数据库连接,这样就可以执行操作数据库的SQL语句。最后在完成数据库操作时,释放与数据库的连接。
下载的数据库驱动文件添加到项目中后,首先需要加载数据库驱动程序,才能进行数据库操作。java加载数据库驱动的方法是调用class类的静态方法forName().
Class.forName(String driverManager)//DriverManager是所需类的完全限定名
forName()方法参数指定要加载的数据库驱动,加载成功,会将加载的驱动类注册给DriverManager,如果加载失败,则会抛出ClassNotFoundException异常。
建立连接
加载完数据库驱动即可建立数据库的连接,要连接数据库可以使用DriverManager类的静态方法getConnection()来实现,并分别将数据库的URL、数据库用户名和密码作为该方法的参数,即可建立到指定数据库的连接。
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//加载数据库驱动//声明数据库db_database17的URLString url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=db_database17";String user="sa";//数据库用户名String password="";//数据库密码//建立数据库连接,获得连接对象connConnection conn=DriverManager.getConnection(url,user,password);
JDBC对数据库的增删改查
1、增、删、改数据
在java程序中,一旦建立了数据库连接,就可以使用Connection接口createStatement()方法来获取Statement对象,通过executeUpdate()方法来执行SQL语句,就可以向数据库进行添加、删除、修改操作,返回影响数据库记录的条数。
//生成一条SQL语句String sql="insert into tb_Users(UserName,Password,Sex,Age) values('杨月娥','1','女','22')";Statement stmt=conn.createStatement();//创建一个Statement对象stmt.executeUpdate(sql);//执行SQL语句conn.close();//关闭数据库连接对象
2、查询数据
查询数据可通过Statement接口的executeQuery()方法执行SQL语句,executeQuery()方法用于执行SELECT查询语句,将放回一个ResultSet型的结果集。通过遍历查询结果集的内容,才可获取SQL语句执行的查询结果。
Statement stmt=conn.createStatement();//创建一个Statement对象String sql="select * from tb_Users";ResultSet rs=stmt.executeQuery(sql);//执行查询,把查询结果赋值给结果集对象int id,age;//声明ID和年龄两个变量String username,pwd,sex;//声明用户名、密码和性别3个变量System.out.println("id\t用户名\t 密码\t性别\t 年龄");//t相当于8个空格while(rs.next()){//遍历结果集id=rs.getlnt("id");//获得ID值username=rs.getString(2);//获得用户名pwd=rs.getString("password");//获得密码sex=rs.getString(4);//获得性别age=rs.getlnt("age");//获得年龄System.out.println(id+"\t"+username+"\t"+pwd+"\t"+sex+"\t"+age);}
总结
总结下来,发现JDBC并不是特别陌生,和C#、vb.net对数据库的操作都很相似,增删改都是调用同一个方法,查询单独调用一个方法,而且执行语句也大体相同。java也没有想象中那么难,多学多用多比较一下就好了。
- JDBC初识
- jdbc初识
- 初识jdbc
- 初识jdbc
- JDBC初识
- 初识JDBC
- JDBC初识
- JDBC初识
- 初识JDBC
- 初识JDBC
- JDBC初识
- 【JDBC】初识JDBC
- JDBC系列一:初识JDBC
- jdbc 初识xml
- 初识JDBC框架
- Java中JDBC初识
- JDBC与JSP初识
- 初识 jdbc 连接oracle数据库
- BlogApp之spring整合Guava中的AsyEventBus异步事件
- Machine Learning - An Introduction
- hdu3341Lost's revenge (AC自动机+变进制dp)
- C语言几种整形类型的区别
- hdu 1055(贪心)
- 初识JDBC
- 写代码要像女人的裙子一样美丽
- Apache Shiro
- HDU 5135 Little Zu Chongzhi's Triangles
- xp系统的 1607:无法安装 installshield scripting runtime
- 程序的组成部分
- qt调用vc编写库文件的方法
- OWAMP协议翻译
- Mac下VIM配置