数据库系统分层结构的含义是什么?

发布网友 发布时间:2022-04-24 09:06

我来回答

2个回答

懂视网 时间:2022-04-08 22:57

List<Something> queryList(SomethingQuery SomethingQuery) throws DAOException;

manager层:改成将配合缓存进行数据库的读写操作。
我的做法

insert:
 insertDB(something)  //直接操作db
query:
 something = getSomethingFromCache  //首先读缓存,不存在时读db
 if(something == NULL) {
  something = getSomethingFromDB
  putSomethingToDB(something)
 }
 return something
update:
 updateDB(something)  //更新db,同时失效缓存中 脏数据
 invalidCache(something)
delete:
 deleteDB(something)  //删除db中数据,同时失效缓存中 脏数据
 invalidCache(something)

该层发生异常时,对外抛出,不曾不作处理。我之前的做法,在该层多异常作处理,如发生异常时 我就返回null, 这样的弊端在于 调用方对null无法做进一步的区分(是发生异常 还是 db与缓存中 均不存在 导致返回null),从而使容错性能下降,例如如果能是异常导致的,则可以进行多次尝试,而当数据不存在时,就需要立即返回作处理了。毕竟manager层相对来说层级较低,说要向上层调用方提供尽可能多的信息,方便做容错等错里。

service层:在该层常常会根据业务的需要做多表的事务操作。

update:
  doInTransaction(TransactionStatus status) {
  try {
   Long tableId1 = table1.insert(something1);
   Long tableId2 = table2.insert(something2);
  } catch (Exception e) {
   status.setRollbackOnly();
  }
  }

该层发生异常时,常常会根据业务需求作转换,例如对于查询失败操作,可以将失败的具体信息一并返回调用方,便于问题排查。

queryResult.isSuccess = false;

queryResult.msg = “db error”;
queryResult.msg = “不存在”;

数据库操作分层结构总结

标签:

热心网友 时间:2022-04-08 20:05

数据库系统的体系结构是指数据库系统的整个体系的结构。数据库系统的体系结构从不同的角度可有不同的划分方式。从数据库管理系统的角度可分为三层,从外到内依次为外模式、模式和内模式。
模式是所有数据库用户的公共数据视图,是数据库中全部数据的逻辑结构和特征的描述。模式(schema)又可细分为概念模式(conceptual
schema)和逻辑模式(109ical
schema)。
希望对你有帮助。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com