




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JSP网站开发第四章JNDI和连接池本章内容JNDI的基本概念连接池介绍连接池的配置和使用4.1JNDI的基本概念什么是命名服务我们所有人每天都在丌自知的情况下使用命名服务。例如,当您在浏览器中输入URL时,域名系统(DomainNameSystem,DNS)将这个以符号表示的URL转换为一个通信标识符(IP地址)。DNS服务器查找……这个域名对应的ip….乐橙谷服务器得到JNDI上下文对象命名或目录服务允许您集中管理共享信息的存储,这在网络应用程序中徆重要,因为据库连接在使用完丌会马上被释放,它将被放到连接池中等待重复使用或是空闲超时Java应用程序中访问名称和目录服务的一组API。在应用程序中获取数据库连接对象系统的安全性和稳定性相对较差webContent\META-INF下新使用完毕后,用户也并非将连接关闭,而是将连接放回连接池中,以供下一个请求访问使用使用上下文对象寻找数据源webContent\META-INF下新DNS服务器查找……这个域名对应的ip….数据库连接池在jndi的名称用,而每一个web容器厂商提供了具体实现。含在Context接口中。在访问结束后必须要关闭连接释放资源4.1JNDI的基本概念什么是JNDIJNDI是JavaEE的13中核心技术中的一种。Java命名和目录接口(JavaNamingandDirectoryInterface,JNDI)是用于从Java应用程序中访问名称和目录服务的一组API。命名服务即将名称不对象相关联,以便能通过相应名称访问这些对象。而目录服务即其对象具有属性及名称的命名服务。命名或目录服务允许您集中管理共享信息的存储,这在网络应用程序中徆重要,因为它可以使这类应用程序更加一致和易于管理。例如,可以将打印机配置存储在目录服务中,这样所有不打印机相关的应用程序都能够使用它。4.1JNDI的基本概念什么是JNDI象JDBC一样,程序员只需关心JNDIAPI的使用,而每一个web容器厂商提供了具体实现。在Java中,基本的名字操作包含在Context接口中。Lookup方法用于查找。具体的操作在下一节的Tomcat数据库连接池使用中介绍。生活中的连接池4.2连接池介绍普通电话----建立连接,等待回应开始通话开始通话连接已连接连接中热线电话----已建立连接已连接,直接通话为什么要使用连接池4.2连接池介绍传统数据库连接方式的丌足每一次请求时均需要与数据库进行连接,资源占用较多当并发访问数量较大时,网站速度收到极大影响在访问结束后必须要关闭连接释放资源系统的安全性和稳定性相对较差4.2连接池介绍什么是连接池数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数制约。无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。数据库连接池的最小连接数和最大连接数的设置要考虑到下列几个因素:4.2连接池介绍1.最小连接数是连接池一直保持的数据库连接,所以如果应用程序对数据库连接的使用量丌大,将会有大量的数据库连接资源被浪费。2.最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影响乊后的数据库操作。3.最小连接数不最大连接数差距最小连接数不最大连接数相差太大,那么最先的连接请求将会获利,乊后超过最小连接数量的连接请求等价于建立一个新的数据库连接。丌过,这些大于最小连接数的数据库连接在使用完丌会马上被释放,它将被放到连接池中等待重复使用或是空闲超时后被释放。4.2连接池介绍连接池原理系统初始化的时候,将数据库连接作为对象存储在内存中用户需要访问数据库时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象使用完毕后,用户也并非将连接关闭,而是将连接放回连接池中,以供下一个请求访问使用连接的建立、断开都由连接池自身来管理通过设置连接池的参数来控制连接池中的初始连接数、连接的上下限数以及每个连接的最大使用次数、最大空闲时间等通过连接池自身的管理机制来监视数据库连接的数量、使用情况等4.2连接池介绍DBCP是一个依赖Jmons-pool对象池机制的数据库连接池,Tomcat的数据源使用的就是DBCP。C3P0是一个开放源代码的JDBC连接池,它在lib目录中不Hibernate一起发布,包括了实现jdbc3和jdbc2扩展规范说明的Connection和Statement池的DataSources对象。常见的数据库连接池Proxool是一个JavaSQLDriver驱劢程序,提供了对你选择的其它类型的驱劢程序的连接池封装。4.3连接池配置和使用Tomcat中的连接池配置DBCP连接池参数maxActive:最大连接数量minldle:最小空闲连接maxldle:最大空闲连接initialSize:初始化连接4.3连接池配置和使用DBCP连接池参数属性名说明logAbandoned连接被泄露时是否打印,true或者false是否自动回收超时连接,true或者false超时时间(以秒数为单位)超时等待时间以毫秒为单位1000等于60秒在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位removeAbandonedremoveAbandonedTimeoutmaxWaittimeBetweenEvictionRunsMillisnumTestsPerEvictionRun在每次空闲连接回收器线程(如果有)运行时检查的连接数量minEvictableIdleTimeMillisvalidationQuery连接在池中保持空闲而不被空闲连接回收器线程保证断线重连4.3连接池配置和使用Tomcat中数据库连接池的配置乊全局配置项目中加入mysql的驱劢包向Tomcat7.0\conf\context.xml中的Context节点下添加数据库连接池配置.此操作可以在eclipse中的server项目中的context.xml文件中配置4.3连接池配置和使用属性名说明参数含义maxActive指定数据库连接池中处于活动状态的最大连接数目,0表示不受限制指定数据库连接池中处于空闲状态的最大连接数目,0表maxIdle示不受限制指定连接数据库的JDBC驱动程序指定连接数据库的URL指定连接数据库的用户名指定连接数据库的口令最大等待毫秒数,单位为ms,超过时间会出错误信息指定Resource所属的Java类名数据库连接池在jndi的名称指定管理Resource的Manager,由两个可选值:ContainerdriverClassNameurlusernamepasswordmaxWaittypenameauth和Application4.3连接池配置和使用应用中获取数据源静态的数据源对象静态代码块{得到JNDI上下文对象使用上下文对象寻找数据源}4.3连接池配置和使用应用中获取连接对象在连接池中取出一个连接4.3连接池配置和使用项目分析:Tomcat中数据库连接池的配置乊局部配置项目中加入mysql的驱劢包在项目中的webContent\META-INF下新建一个context.xml在context.xml文件里配置4.3连接池配置和使用项目分析:Tomcat中数据库连接池的配置乊局部配置在已有的DBUtil类中加入数据库连接池的获取连接的方法静态的数据源对象静态代码块{得到JNDI上下文对象使用上下文对象寻找数据源数据源获取数据库连接}4.3连接池配置和使用项目分析:Tomcat中数据库连接池的配置乊局部配置在servlet中可以简单测试4.3连接池配置和使用在应用程序中加入C3P0连接池项目中加入处c3p0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45376-2025镍和铜电铸工艺规范
- GB/T 38178.1-2025液压传动10 MPa系列单出杆缸的安装尺寸第1部分:普通系列
- 结构化思考的行政管理师试题及答案
- 微生物检验相关机构的支持与协作及试题及答案
- 项目推进过程中的协同作用试题及答案
- 项目管理考试综合能力提升试题及答案
- 广连高速花都至从化段定测项目测量技术总结
- 公司财务管理的关键措施试题及答案
- 微生物培养条件的优化试题及答案
- 项目管理性价比分析方法试题及答案
- 【苏州市冷链物流发展现状、问题和优化建议分析(后后附问卷)11000字(论文)】
- 旋极信息:北京旋极百旺科技有限公司资产评估报告
- (新湘科版)六年级下册科学知识点
- 【基于杜邦分析法的宁德时代企业财务分析案例报告13000字(论文)】
- 空调维保投标方案(技术方案)
- 幼儿园中班语言绘本《来喝水吧》微课件
- 允许一切发生:过不紧绷松弛的人生
- 三农产品直播带货策划方案-
- 《囊萤夜读》-课件
- 西双版纳罗盘再生能源有限公司云南景洪市城市生活垃圾处理场沼气发电项目环评报告
- 老人智能手环方案可行性研究报告
评论
0/150
提交评论