第10讲使用JDBC进行库连接.ppt

  1. 1、本文档共159页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
步骤3-建立数据库连接 建立连接 DriverManager.getConnection()方法用于建立与某个数据源的连接,getConnection方法是DriverManager类中的静态方法 Statement语句: createStatement(int?resultSetType, int?resultSetConcurrency) PreparedStatement语句: preparedStatement(String sql, int?resultSetType, int?resultSetConcurrency) CallableStatement语句: preparedCall(String sql, int?resultSetType, int?resultSetConcurrency) 注:resultSetType 设置是否滚动   resultSetConcurrency设置是否更新 数据源 数据源是在JDBC2.0中引入的一个概念,在JDBC2.0的扩展包javax.sql中定义了DataSource接口来描述这个概念,一般在相应数据库的JDBC驱动程序中有该接口的实现类.数据源--Data source , 读取数据的来源,也就是说你的系统要读取的数据去 什么地方找(存放数据的地方)! 数据源使用方式 第一种方式在程序中创建类的对象,该对象实现JDBC驱动程序中的DataSource接口,并使用该对象获取数据库连接 第二种方式是使用JNDI注册数据源,然后在程序中查询获取在JNDI服务中的数据源.这样用户只需要提供一个逻辑名称,而不是数据库登陆的具体细节 方法一:DataSource类 代码中创建一个数据源的实例,并设置数据库连接的方式和参数,然后通过DataSource接口提供的getConnection方法获取数据库连接. MysqlDataSource source = new MysqlDataSrouce(); srouce.setUrl(url); source.setUsername(userName); source.setPassword(password); Connection conn = source.getConnection(); (DirectUseDataSource.java) 方法二:通过JNDI连接数据库 JNDI(Java Naming and Directory Interface)即是Java命名和目录接口,是一个为Java程序提供命名和目录功能的API。 方法二:通过JNDI连接数据库 通过JDBC使用JNDI是非常有用的,因为这样可以注册(绑定)数据源,然后在程序中查找这些数据源,而不必提供准确的数据库连接信息。因此,如果数据库连接信息改变了,那么只需修改JNDI对象,而不必修改程序。当然JNDI不止用于数据源,它也可以用于存储和获取任何类型的已命名的java对象以及执行标准的目录操作。 方法二:通过JNDI连接数据库 首先使用JNDI将数据源对象注册一个命名服务,然后可以在程序中使用JNDI提供的接口按照名称查询找到对应数据源,而大部分服务器都提供JNDI命名服务,比如我们可以在Tomcat中就可以在server.xml中配置数据源. 数据库连接池 传统的模式基本是按以下步骤:   1. 在主程序(如Servlet、Beans)中建立数据库连接。   2. 进行SQL操作,取出数据。   3. 断开数据库连接。 数据库连接池 使用这种模式开发,存在很多问题 首先,我们要为每一次WEB请求建立一次数据库连接,对于一次或几次操作来讲,或许你觉察不到系统的开销,但是,对于WEB程序来讲,即使在某一较短的时间段内,其操作请求数也远远不是一两次,而是数十上百次(想想全世界的网友都有可能在您的网页上查找资料),在这种情况下,系统开销是相当大的。事实上,在一个基于数据库的WEB系统中,建立数据库连接的操作将是系统中代价最大的操作之一。很多时候,可能您的网站速度瓶颈就在于此。 数据库连接池 其次,使用传统的模式,你必须去管理每一个连接,确保他们能被正确关闭,如果出现程序异常而导致某些连接未能关闭,将导致数据库系统中的内存泄露,最终我们将不得不重启数据库。 数据库连接池 对以上问题,我们首先想到可以采用一个全局的Connection对象,创建后就不关闭,以后程序一直使用它,这样就不存在每次创建、关闭连接的问题了。但是,同一个连接使用次数过多,将会导致连接的不稳定,进而会导致WEB SERVER的频频重启。 数据库连接池 故而,这种方法也不可取。数据库连接池技术是解决这个问题最常用的方法,在许多应用程序服务器(例如:Weblogic,WebSph

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档