1.在内存中开辟一块空间,存放多个数据库连接对象.就是Connection的多个实例
2. 连接池技术有很多,c3p0,dbcp,druid,以及JDBC Tomcat Pool,

  JDBC Tomcat Pool直接由 tomcat 产生数据库连接池.
3.图示
  3.1 active 状态:当前连接对象被应用程序使用中
  3.2 Idle 空闲状态:等待应用程序使用

4.使用数据库连接池的目的
  4.1 在高频率访问数据库时,使用数据库连接池可以降低服务器系
    统压力,提升程序运行效率.
  4.1.1 小型项目不适用数据库连接池.

5.实现 JDBC tomcat Pool 的步骤.
  5.1 在 web 项目的 META-INF 中存放 context.xml,在 context.xml 编写数据库连接池相关属性

<?xml version="1.0" encoding="UTF-8"?>
<Context> <Resource
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://192.168.153.128:3306/mybaties?characterEncoding=utf-8"
username="root"
password="123456"
maxActive="50"
maxIdl="20"
name="test"
auth="Container"
maxWait="10000"
type="javax.sql.DataSource"
/>
</Context>
maxActive="50"  连接池中最多有50个处于活动状态的Connection对象,也就是最大并发量
maxIdl="20" 连接池中最多有20个Connection处于空闲状态
name="test" 当前连接池的名称是test
auth="Container" 当前连接池归Tomcat容器管理,也可以设置成应用程序管理
maxWait="10000" 一个链接请求最长的等待毫秒数,如果超过时间还没有请求到Connection对象,就报错
type="javax.sql.DataSource" 连接池在java中对应的对象 5.2 把项目发布到 tomcat 中,数据库连接池产生了

6.可以在 java 中使用 jndi 获取数据库连接池中对象
  6.1 Context:上下文接口.context.xml 文件对象类型
  6.2 代码: 注意  下面的代码是写在Servlet中,并不是普通 java类中

Context cxt = new InitialContext();
DataSource ds = (DataSource)
cxt.lookup("java:comp/env/test");//前面的固定,text是context.xml配置的name属性的值
Connection conn = ds.getConnection();

  

最新文章

  1. ArcGIS Engine开发之地图基本操作(3)
  2. socket网络通信
  3. T-SQL---多值模糊查询的处理
  4. Javascript正则表达式匹配替换
  5. wf(三)
  6. Knockout学习笔记之一
  7. PRD
  8. Microsoft Azure 的一些限制 Global
  9. Python Tricks 若干
  10. ios网站,博客
  11. 简易的JQuery设置Cookie
  12. 【应聘】阿里巴巴Java面试题目
  13. Adobe Illustrator CS6 绿色简体中文版下载地址
  14. vim自动补全
  15. jsp 、js和css
  16. SpringMvc项目 FastJson的数据中有$ref解决办法
  17. 我的 MarkDown 学习笔记
  18. 数据库CRUD操作以及MyBatis的配置使用
  19. maven项目pom.xml添加main启动类
  20. 删除Mac OS X中Finder文件打开方式列表的重复程序或失效的

热门文章

  1. linux下的ping工具--fping
  2. JS散度
  3. MyBatis延迟加载和缓存(4)
  4. Aspose.words四 bookmark
  5. 关于EOF:
  6. js DomContentLoaded 和 load 的区别
  7. 使用 gitbook 写东西
  8. 【Android优化篇】提升Activity加载速度的方法
  9. (转)Ext.onReady详解
  10. PAT 1032 挖掘机技术哪家强(20)(有测试样例)