一、总体分析

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

代码很少,只是直接再增加一点功能就可以了呢?如果使用的不是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类作为数据库中两张表的映射类。使用对象不仅可以减少数据库操作的频繁度【这个项目中客户功能的部分体现的更明显】,更能方便功能的添加【例如,增加管理员改密码功能就很方便了】。

    

Java连接Oracle数据库开发银行管理系统【二、设计篇】的更多相关文章

  1. Java连接Oracle数据库开发银行管理系统【一、需求篇】

    此系统开发共分为三篇完成. 第一篇[需求篇]:效果展示图,也就是需求部分的展示 第二篇[设计篇]:需求分析和类,接口的设计 第三篇[实现篇]:具体代码实现

  2. Java连接Oracle数据库开发银行管理系统【三、实现篇】

    说明:里面的主要代码都加的有注释部分,所以代码显得很长,如果有错误的地方,谢谢指出. 注意需要导入数据库jar包 ------------------------------------------- ...

  3. oracle入门(5)——java连接oracle数据库

    [本文介绍] 前面几篇说了那么多,最终还没讲到如何用java连接数据库,本文实用一点,讲讲如何连接数据库. [java连接oracle数据库] 1.导入jdbc驱动:看到这里,就忙着上网找驱动?不,安 ...

  4. Java连接Oracle数据库的三种连接方式

    背景: 这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询. SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQ ...

  5. java连接Oracle数据库

    Oracle数据库先创建一个表和添加一些数据 1.先在Oracle数据库中创建一个student表: create table student ( id ) not null primary key, ...

  6. java连接oracle数据库的实现代码

    package connectionOracleDatabase; import java.sql.Connection; import java.sql.DatabaseMetaData; impo ...

  7. java连接Oracle数据库实现增删改查并在Navicat中显示

    创建TEST表 eclipse中的java项目 代码 数据库方法类 DBUtil: package util; import java.sql.Connection; import java.sql. ...

  8. java连接Oracle数据库的操作说明

    在测试中,我们常常需要连接Oracle数据库来进行查询对比.下面,我们就来看看,如何使用java代码来连接数据库,并且取出我们想要的数值. 首先,java中如果要连接Oracle数据库,需要jdbc的 ...

  9. Java连接Oracle数据库常用方法

    JDBC的六大步骤: 注册驱动 获取连接 获取执行sql语句对象 执行sql语句 处理结果集 关闭资源 oracle URL: jdbc:oracle:thin:@localhost:1521:SID ...

随机推荐

  1. 【Java学习笔记】Map接口的子接口---TreeMap

    TreeMap,与TreeSet类似,可以对集合中的元素进行排序,同时保持元素的唯一性. 应注意,Comparable(实现接口,记得覆盖comparaTo方法),Comparator的使用. imp ...

  2. 编译 wxWidgets-3.0.2 on Mac OS X Yosemite 出错?!的解决方法

    tar -zxf wxWidgets-3.0.2.tar.bz2   //解压 //三部走 ./configure ./make 提示webKit出错 原因:有人偷懒,没试编译就发布了. 解决:找到. ...

  3. URI和URL、URN区别

    URI不能读取/写入资源,这是统一的资源定位器(URL)的任务.URL是一种URI,它的schema是已知的网络协议,并且它把URI与某种协议处理程序联系起来(一种与资源通讯的读/写机制).URI一般 ...

  4. Redis小结

    一. Redis简介 Redis是一个速度非常快的高性能的key-value存储系统.redis的出现,很大程度补偿了memcached这类key/value存储的不足.Redis支持存储五种valu ...

  5. Python发布包到Pypi

    本地打包:python setup.py sdist 上传Pypi:python setup.py register sdist upload

  6. iOS 的文字滚动条效果的实现

    UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(50, 100, 300, 50)]; label.text  = @"欢 ...

  7. Smarty缓存的5个知识点

    (1)页面缓存:整个页面全局的缓存 需要4个步骤: ①开启缓存  $smarty->caching = true; ②设置缓存的生命周期  $smarty->cache_lifetime ...

  8. linux下配置ssledge代理服务器

    ssl edge 是一个非常好用的VPN/proxy, 比云梯 稳定快速的多.  在LINUX下开发 Titanium 需要用到各种FQ,所以它是必备工具. 1. 根据自己付费后的用户名和密码,下载 ...

  9. Sql server中访问Excel---select from Excel

    本文介绍在MSSMS中通过SQL语句查询Excel的方法. 访问Excel主要是通过Office提供的ACE数据源来完成这个操作,使用opendatasource来实现访问Excel.即在MSSMS中 ...

  10. [置顶]PADS PCB功能使用技巧系列之NO.004- 如何做到20H规则?

    电源层与地层之间变化的电场在板边缘会向外辐射电磁干扰(EMI),称为边沿效应.20H规则可将70%的电场限制在接地层边沿内,100H可达到98%. (1)在Layout中,选择菜单栏Setup -&g ...