`
liuwei1981
  • 浏览: 753966 次
  • 性别: Icon_minigender_1
  • 来自: 太原
博客专栏
F8258633-f7e0-30b8-bd3a-a0836a5f4de5
Java编程Step-by...
浏览量:156540
社区版块
存档分类
最新评论

总结一下维护了一年的一个软件系统的软件体系(五)

阅读更多

           该系统软件框架对sql操作进行了封装,并提供了一批API帮助客户程序员更为简便的进行数据库操作。这些api包括:

  1.        统一的DbConnection管理,客户程序员只需将要执行的sql语句作为参数传入,api会将结果列表以二维字符串数组的形式返回。api提供特殊的方法,例如翻页处理等都提供了相应的处理。
  2.        按照功能划分dao操作类。类的编写有自身设计的一套规范。首先该功能的dao操作类设计为接口,然后按照数据库的不同特殊处理实现该接口。例如:接口为TestDAO.java,使用oracle数据库实现该接口,为OraTestDAO.java,使用sqlserver数据库实现该接口,为SqlTestDAO.java。dao操作类直接操作框架对数据库进行操作的DbConnection对象进行业务处理。
  3.       所有的接口实现的dao操作类在web服务器的一个特殊目录中存在一个xml格式的配置文件。
    xml 代码
    1. <DAOLIST>  
    2. <DAO>  
    3. <NAME>testdaoNAME>  
    4. <CLASSNAME>com.test.dao.OraTestDAOCLASSNAME>  
    5. <DESCRIPTION>测试DESCRIPTION>  
    6. DAO>  
    7.  DAOLIST>  
  4.     在web服务器的同时,会同时启动一个线程,读入该xml文件,并读入数据库配置参数文件。与hibernate这个框架相比,这个dao管理只能在web应用中使用。
  5.     前几篇提到的web层使用的Ctrl控制类,在框架设计中不能直接操作dao操作类,而是存在一个中间层,包括BO类和VOListIter类,编写这两个类都需实现框架提供的接口。bo类主要包括数据库的除获取数据列表以外的所有操作,如录入,修改等,VOListIter类专门为实现数据列表翻页设计,通过该类获取翻页数据列表方法,需要首先声明一个长度为5的Integer类型的数组,DbConnection类的该方法需要这个参数,将该列表的当前页数和最大页数返回。

       这个数据库框架还提供了一些方便编写代码的操作,例如拼装sql语句,提供了一个这样的方法:MakeUp类。代码如下:

java 代码

 

  1. String sql = " INSERT INTO  test_t  (testid,testname) "  
  2.         + " VALUES (@,'#')  ";   
  3.   
  4. String[] key = {   
  5.         test.getId(),test.getName()     
  6.   };   
  7. sql = MakeUp.makeUp(key, sql);  

 

这个makeUp方法会将sql语句拼装好,@表示数字占位,#表示字符占位。

这个系统的数据库操作管理大致就是这样了,比较简单,总的来说就是对dbconncetion 操作进行了重新封装,方便客户程序员的使用。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics