发表于: 2017-04-26 00:23:30

4 1627


今天完成的事情:

  • 23.将部署自己服务到服务器上,包括Maven,Mysql客户端等。直接用Maven命令跑单元测试。



  • 24.直接执行Main方法,去在服务器上跑通流程。



写了个helloworld,跑通了


明天计划的事情:

  • 25.测试一下不关闭连接池的时候,在Main函数里写1000个循环调用会出现什么情况。
  • 26.测试一下连接DB中断后TryCatch是否能正常处理。
  • 27.检查一下自己的代码是否符合规范,如果DB的表格有改动,应该改哪些内容,需要多久。

25解决应该是没问题了,如果进度快想把任务一给完成了,然而计划赶不上变化,保守点好了.不然像老罗一样进度完成不了打自己脸hhhh




遇到的问题:

今天花了很多时间在25上:

查了连接池是什么,有什么用,为什么要使用

然后在Main函数里写1000个循环调用会出现什么情况.

一直想不通要循环调用什么,出现什么情况才是对的....然后一天就这么纠结过去了.我明明中午就解决了23和24...


睡前实在怼不动了,问了下师兄,师兄提供了一篇日报,里面有链接真是太好了,我发现我不太擅长找这些文章...总出现奇奇怪怪的东西,或许是很多文章讲得太深了看不懂,毕竟基础薄弱

想了解a,发现里面还有b,c方法关键字什么的,然后去查b,c是什么意思,又牵扯出来d.e....

等我回到a的时候,我都忘了要干嘛了


多翻师兄日报很重要啊,日报里贴链接的师兄真是太棒了hhh.

大致看了一下师兄日报里的链接,应该能解决,我先睡一觉看明天起来还能解决么


收获:

数据库连接池是什么?(DBCP)

数据库连接池是针对数据库连接管理而产生的

用于创建和管理数据库连接的缓冲池技术,缓冲池中的链接可以被任何需要他们的线程使用,使用完毕后,将返回连接池中,等待为其他线程服务


数据库连接池的最大连接数和最小连接数:

数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接来设定的.无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量.如果应用程序对数据库的链接不打,将会有大量的数据库连接资源被浪费

连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求被加入到等待队列中,这会影响以后的数据库操作.


如果最小连接数与最大连接数相差很大,那么最先连接请求将会获利,之后超过最小连接数量的连接请求等价建立一个新的数据库连接.

不过,这些大于最小连接数的数据库连接在使用完不会马上被释放,他将放到连接池中等待重复使用或是空间超时后被释放



数据库连接池有什么用?
1:减少连接创建的次数和时间.数据连接池允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个
2:简化编程模式.使用连接池时,每一个单独的线程能够像创建一个自己的JDBC连接一样操作,允许用户直接使用JDBC编程技术

3:控制资源的使用.如果不使用连接词,每次访问数据库都创建一个连接,系统稳定性受系统连接需求影响很大,容易产生资源浪费和高负载异常.


为什么要使用数据库连接池?

假设网站一天有很大的访问量,数据库服务器就需要为每次连接创建一次数据库连接,浪费数据库的资源,并且容易造成数据库服务器内存溢出,宕机.


数据库连接池的原理及实现:
1:建立一个数据库连接池pool,池中有若干个Connection对象,当用户发来请求需要进行数据库交互时则会使用池中第一个Connection对象
2:当本次连接结束时,再将这个Connection对象归还池中,这样就可以保证池中一直有足够的Connection对象


参考文献:

http://www.3fwork.com/b802/000088MYM012217/

http://blog.csdn.net/frightingforambition/article/details/25464129

http://www.cnblogs.com/hapday/p/5729329.html




返回列表 返回列表
评论

    分享到