JDBC之代码优化

   上一次我们是先实现了JDBC对数据库的增删查改操作,然后在增加新信息过程中发现了新的问题,即当某一操作失败,为了维护数据库的一致性,我们需要回滚事务。在其中我们了解了事务的工作原理及相关代码的使用。
    但是在前面的代码中,我们直接将数据库的链接和要完成增删查改的内容写入了原码,这种做法是非常不适于工业标准的。所以本次我们需要开始优化代码。

    1.善用properties配置文件

新建一个dbconfig.properties文件用于存储数据库的URL,Driver,数据库用户名,数据库密码。目的是为了方便修改代码。
1111680-20170223111307820-1912790532.png

 2..构造一个Connection链接工厂

   完成从properties中读取配置信息,并以此为向导连接数据库。其中使用静态代码块和单例模式,以确保在程序执行过程中只会有一个ConnectionFactory实例。
1111680-20170223111308366-1318451007.png
1111680-20170223111308726-2058606171.png

 3.构建DTO类,用以实现检索和存储与数据库交流的数据对象。

首先构建父类IdEntity,父类中存在Id成员变量,这也是所有子类应该具备的成员变量。
1111680-20170223111309038-805801114.png
然后分别构建User和Adress子类,并生成相应的set(),get()方法。
1111680-20170223111309476-224548443.png
  1111680-20170223111309929-1646036915.png

 4.构建DAO类

  DAO类是数据访问对象,通过DAO来处理从数据库中取出的数据,或者通过DAO来存入要更新向数据库中的数据。DAO中包含大量的逻辑代码。
  为了保证程序的可移植性,首先新建一个DAO的接口,构建类的外观,然后再去implements这个接口。
1111680-20170223111310148-1845712875.png
 然后去implements这个接口:

1111680-20170223111310538-160420317.png
  1111680-20170223111310773-1456779738.png
 最后在主函数中实例化DAO类的对象,实现向数据库传递信息。
1111680-20170223111311257-1357114512.png
 总结:在整个代码优化过程中,包含了丰富的代码优化的思想。我们首先利用了properties来保存数据库的相关信息,然后利用ConnectionFactory的单例模式和makeConnection方法来完成对properties指向的数据库的连接。同时将与数据库进行交流的数据,抽象成一个DTO类。将与数据库数据交流的动作,抽象成一个DAO类。
原码链接如下:https://github.com/Dante-dan/JDBC
 




转载于:https://www.cnblogs.com/DDante/p/078be2d79bcfd36291283bb7dd10dc05.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值