zoukankan      html  css  js  c++  java
  • java service domain dao 分层思路

    今天在开发项目的时候,对项目的java后台的分层有一些看法:

    首先,鼓励使用service domain dao 层分层设计概念。

    其次,对几层作用的理解:

    第一:dao层操作单表,不涉及复杂逻辑,主要是表的增删改查操作,完全根据domain的要求来查询数据。

    第二:domain层考虑业务逻辑,例如过滤条件,放行或者返回,以及数据的处理,为调用dao层做好准备,一个domain可以调用一个或者一组相关的dao层

    第三:service层调用一个或者一组domain层,主要是展现需要开放出去的接口,其中domain层不是所有的接口都要再service层体现的,可能仅在service层开放几个接口出去,此外,主要接口需要对接受的参数要尽量的扩大化,也就是说可以容纳各种类型的参数的接入(Object),然后需要在service层做好转换,以备domain层使用。

    正确的设计应该是,一个领域活动会聚合对应一个或一组DAO ,来完成一个领域活动。而一个服务可能包含两个领域活动,比如一个转账的业务,对应两个领域活动。两个帐户的金额分别发生变化,需要操作一组领域活动,而每个活动需要操作很多表(调用多个DAO )。

    使用 接口方式可以实现系统之间的松耦合:

    一般定义: IUserService  UserService  IUserDomain  UserDomain  IUserDao UserSqlDao   UserHbaseDao

    使用接口可以有不同的实现类 ,不需要改代码,可以通过配置更改不同的实现类

  • 相关阅读:
    P6665 [清华集训2016] Alice 和 Bob 又在玩游戏
    模板库
    CSP-S2021 游记
    CSP-S2021 SD迷惑行为大赏
    博弈论总结
    LOJ6033「雅礼集训 2017 Day2」棋盘游戏(二分图最大匹配必经点)
    LOJ6065「2017 山东一轮集训 Day3」第一题
    LOJ6059「2017 山东一轮集训 Day1」Sum
    LOJ6102「2017 山东二轮集训 Day1」第三题
    python笔记:字符编码
  • 原文地址:https://www.cnblogs.com/printN/p/6901774.html
Copyright © 2011-2022 走看看