Java数据库编程第4章.ppt
《Java数据库编程第4章.ppt》由会员分享,可在线阅读,更多相关《Java数据库编程第4章.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第四章JDBC回顾r增加数据:insertr更新数据:updater删除数据:delete/truncate/dropr查询数据:u表别名、列别名u排除重复数据:distinctu限定行数:topnpercentu单条件选择操作u多条件选择操作u范围查询(between.and、in、like)u处理空值:where字段isnotnullu数据排序:orderby字段desc目标数据库应用程序与持久层概念数据库应用程序与持久层概念JDBC概述及使用概述及使用使用使用Connection、Statement和和PreparedStatement使用结果集使用结果集(ResultSet)为什么需
2、要JDBCrJDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力Java应用程序应用程序JDBCJDBCJSP/Servlet客户端客户端数据库服务器数据库服务器应用服务器应用服务器数据库服务器数据库服务器客户端客户端JDBC概述r为什么要使用JDBCSQL语句能够直接访问数据库,但是在JAVA中谁来操作SQL语句?r什么是JDBCuJavaDataBaseConnectivityu是一种用于执行SQL语句的JavaAPI,它由一组用Java语言编写的类和接口组成。通过这些类和接口,JDBC把SQL语句发送给不同类型的数据库进行处理并接收处理结果rJDBC两大类u对Java开发
3、人员而言是API,对数据库提供商而言是接口u面向开发人员:作为API,JDBC为程序开发提供标准的接口u面向数据库厂商:作为接口,让数据库厂商按标准方法来实现数据库连接与操作(数据库驱动程序)JAVA企业应用与持久层JDBC的四种驱动程序rJDBC-ODBCBridgeuJDBC-ODBC桥u由SUN公司提供通用的驱动,能访问各种数据库,但效率极低rnative-APIpartly-Javadriveru本地库Java驱动程序,外层是java,底层可能是c,c+u执行效率高,客户端必须安装本地驱动,维护不方便rnet-protocalall-Javadriver(JDBCProxy)u网络协议
4、纯Java驱动程序(通用)u客户端不必安装本地库,使用方便,但性能相对较低rnative-protocolall-Javadriveru本地协议完全Java驱动程序u将JDBC调用转化为特定数据库的网络协议,效率很高JDBC驱动5-1rJDBC驱动由数据库厂商提供r在个人开发与测试中,可以使用JDBC-ODBC桥连方式r在生产型开发中,推荐使用纯Java驱动方式DBDBServerServerDBDBServerServerJDBCAPIJDBCDriverManager纯纯Java驱动驱动JDBCODBC桥桥Java应用程序应用程序ODBCJDBC驱动5-2r桥连r将对JDBCAPI的调用,
5、转换为对另一组数据库连接API的调用r优点:可以访问所有ODBC可以访问的数据库r缺点:执行效率低、功能不够强大JDBC-ODBC桥桥Java应用程序应用程序JDBCAPIODBCAPIODBC层层DBDBServerServerJDBC驱动5-3r使用JDBC-ODBC进行桥连1、在控制面板ODBC数据源系统DSN中配置数据源2、编程,通过桥连方式与数据库建立连接-语法语法-Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connectioncon=DriverManager.getConnection(jdbc:odbc:news,sa,sa);JD
6、BC-ODBC桥驱动类桥驱动类的完全限定类名的完全限定类名数据源名称数据源名称演示:配置演示:配置ODBC数据源数据源JDBC驱动5-4r纯Java驱动r由JDBC驱动直接访问数据库r优点:100%Java,快又可跨平台r缺点:访问不同的数据库需要下载专用的JDBC驱动JDBC驱动驱动Java应用程序应用程序JDBCAPIDBDBServerServerJDBC的常见APIJDBC驱动程序管理器驱动程序管理器,它是它是JDBC体系结构的支柱,主要作用体系结构的支柱,主要作用是把是把Java应用程序连接到应用程序连接到JDBC驱动程序上,然后退出驱动程序上,然后退出定义到数据库的连接,主要用于创
7、建定义到数据库的连接,主要用于创建Statement对象对象执行执行SQL语句的接口,通过相关方法执行静态的语句的接口,通过相关方法执行静态的SQL语句语句类用于检查并报告用类用于检查并报告用JDBC操作数据库时的各种异常操作数据库时的各种异常接收某查询接收某查询SQL查询语句所返回的结果集对象查询语句所返回的结果集对象预编译的预编译的SQL语句语句,结合参数可以大大提高结合参数可以大大提高JDBC的执行效率的执行效率执行存储过程执行存储过程JDBC开发步骤r加载驱动程序r创建一个连接对象r创建声明语句对象r执行SQL语句u使用声明语句对象的executeUpdate(sql)方法完成增删改操
8、作u使用声明语句对象的executeQuery(sql)方法获得结果集对象r关闭各种对象JDBC程序的工作模板tryClass.forName(JDBC驱动类驱动类);catch(ClassNotFoundExceptione)System.out.println(无法找到驱动类无法找到驱动类);tryConnectioncon=DriverManager.getConnection(JDBCURL,数据库用户名数据库用户名,密码密码);Statementstmt=con.createStatement();ResultSetrs=stmt.executeQuery(SELECTa,b,cFR
9、OMTable1);while(rs.next()intx=rs.getInt(a);Strings=rs.getString(b);floatf=rs.getFloat(c);con.close();catch(SQLExceptione)e.printStackTrace();获得数据库连接获得数据库连接发送发送Sql语句语句处理结果处理结果注册注册JDBC驱动驱动JDBCURL用来标识数据库用来标识数据库必须处理的异常必须处理的异常释放资源释放资源必须处理的异常必须处理的异常演示一r使用JDBC查询数据u使用Class.forName加载驱动程序u使用DriverManager创建一个连
10、接对象u使用连接对象创建声明语句对象u使用语句对象的executeQuery(sql)方法获得结果集对象,使用后立即关闭操作结果集对象u关闭声明语句对象u关闭数据库的连接演示:使用JDBC查询数据r使用Class.forName加载驱动程序.try String driver=“com.microsoft.sqlserver.jdbc.SQLServerDriver”;Class.forName(driver);catch(ClassNotFoundException e)e.printStackTrace();演示:使用JDBC查询数据r使用DriverManager创建一个连接对象Stri
11、ng url=jdbc:sqlserver:/localhost:1433;databaseName=name;String user=sa;String password=;try Connection conn=DriverManager.getConnection(url,user,password);System.out.println(连接成功);conn.close();catch(SQLException e)System.out.println(连接失败);e.printStackTrace();演示:使用JDBC查询数据r使用语句对象的executeQuery(sql)方法获
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 数据库 编程
限制150内