发表于: 2017-04-28 20:22:29

1 1267


今日完成

1、连接池:相比与传统JDBC,连接池在初始化时就建立了一定数量的连接,在程序执行数据库操作时不再需要频繁建立断开连接,而是从池中取出连接,用完后放回。需要限制最大数量的连接,如果欲取出的连接数大于最大值,那么将会等待连接被放回


猜测如果在主函数中取出超过max的连接,比如1000个,不还的话,由于主函数只是一个线程,所以会卡死,或者Runtime异常


不至于让我直接写连接池吧,OK,找jar包,发现有不少,本来想用c3p0,并按教程跑了一个简单的demo。


2、发现spring支持DBCP,故继续学习Spring,放弃c3p0。

想从头写一个SpringDemo,问题不少:(因错误配置的项目已删,凭回忆及搜索记录写)

1)It is indirectly referenced from required .class files错误: 找不到或无法加载主类

先google发现很可能是因为依赖包的问题

尝试删除pom.xml文件,并注释掉与spring有关内容,编译运行正常。

pom拿回来删删看,删的只剩Spring-core,Spring-bean等4-5个包,并不行

搜索发现正确的Spring Maven导入方式,只要一个

其他包自行解决了。

2)继续报错一大堆,关键信息是

如图加上<!DOCTYPE ....>部分是beans的声明,当时以为是注释没写。

3)过程中找到SpringFramework的qiuckstart(链接),我抄了一下

发现其如我之前所预料的的提供了绕过xml文件的方法,采用了@bean这种声明方式串联起了整个Spring框架

我觉得这很cool,但是官方文档很长很长,全英文,疑惑于是否要去看,关键是我是否能看懂


3、我还是想把连接池搞定完成今天的任务,网上找了个bean的配置试了一下,失败,需要学习Spring 不止DBCP的内容,Spring学习进度不够。


4、我仔细想了想,手写连接池并不难:

可以看到我完成任务1已经独立出来的SQL工具类(写的并不好)刚好是以connection为基础的,

我只需要添加一个poolinit,建立多条conn

并给出getConn方法和givebackConn方法就是一个简单的pool了吧


明日计划

视问题情况为定:case

1、完成4,写一个ConnPool

2、学习Spring xml版

3、学习Spring 官方文档

no,自己写一个感觉很cool,我要自己写一个。


收获

c3p0简单连接池,vim命令行,xml结构写法,spring一点点


问题

Spring在Java开发中应该是一个很重要的位置吧,但是现阶段我需要学习到一个什么程度?

以及是努力看官方文档学习,还是最好买本书?








返回列表 返回列表
评论

    分享到