Java连接Oracle数据库开发银行管理系统【二、设计篇】

一、总体分析

    此系统的实现并不难,但是如何更好的设计出实现方式还是需要更深入的分析,例如:如果再增加其他功能,是不是需要变动的

代码很少,只是直接再增加一点功能就可以了呢?如果使用的不是Oracle而是MySQL数据库呢?这都应该在设计阶段考虑清楚。

二、具体分析

    1.创建test包并创建TestBank类,启动和运行系统。【启动】

    2.创建service包

        2.1 创建业务逻辑层类Bank,定义银行系统主菜单方法,以及功能的操作。

        2.2 创建业务逻辑层类AdminService,完成Bank的请求,转发给数据库操作,再把数据库操作的结果处理后返回给Bank中

               管理员的请求。

        2.3 创建业务逻辑层类AdminService,完成Bank的请求,转发给数据库操作,再把数据库操作的结果处理后返回给Bank中

     客户的请求。

   3.创建po包,定义Admin类和Customer类

      Admin类是数据库表administrator的映射类,用来存储administrator表的数据。

      Customer类是数据库表customer的映射类,用来存储customer表的数据。

  4.创建dao包,

        4.1 创建db.properties文件,里面保存数据库的配置文件。

    4.2 创建Config类,加载配置文件内容到Properties对象中。

        4.3 创建BaseDao类,连接数据库,并且进行数据库的操作。

    4.4 创建AdminDao接口,定义管理员登陆、添加顾客(开户)、计算储蓄总额、富豪排行榜方法。

    4.5 创建AdminDaoImpl类,继承BaseDao,实现AdminDao接口,使用jdbc完成相应的数据库操作。

    4.6 创建CustomerDao接口,定义顾客登录,存款,取款,查询余额,转账,修改密码方法。

    4.7 创建CustomerDaoImpl类,继承BaseDao,实现CustomerDao接口,使用jdbc完成相应的数据库操作。

总结:

      1.使用Config,实现加载数据库配置文件,这样如果更改数据库的配置,只需在文件中更改配置信息即可,不需要再修改代 码。  

  2.Bank类中的功能操作,只管功能的操作【相等于前台的显示】,DaoImpl中只管进行数据库的操作请求【数据库请求部分】,然后将数据库操作的结果返回到Service中进行处理【相等于中间处理】,Service接受Bank的请求,然后将请求转发给DaoImpl,然后接受DaoImpl的结果,进行处理,将处理结果返回到Bank的请求。

    【三级分离,每一部分完成特定的功能,功能操作请求---> 中间转发处理--->数据库操作 使结构清晰】。

     3.使用Admin,Customer类作为数据库中两张表的映射类。使用对象不仅可以减少数据库操作的频繁度【这个项目中客户功能的部分体现的更明显】,更能方便功能的添加【例如,增加管理员改密码功能就很方便了】。

    

上一篇:Linux中等待队列的实现


下一篇:20145236 《Java程序设计》实验一实验报告