java domain层_java service domain dao 分层思路

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

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

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

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

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

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

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

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

一般定义: IUserServiceUserServiceIUserDomainUserDomain  IUserDao UserSqlDao   UserHbaseDao

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

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaWeb项目中,通常会将代码按照业务逻辑分成不同的,其中常见的就是domaindaoservice和controller。下面分别介绍这四个的作用和职责: 1. Domain Domain通常包含了业务领域中的实体类,如User、Order、Product等,它们是应用程序中的核心数据模型,用于描述业务对象及其属性和行为。Domain通常不包含任何数据访问或业务逻辑,只包含实体类及其相关属性和方法。 2. DAO DAO是数据访问对象,负责与数据库进行交互,实现数据的增删改查等操作。DAO通常包含了数据访问接口和实现类,数据访问接口定义了数据访问操作的接口,而数据访问实现类则实现了数据访问接口中定义的操作。 3. Service Service是业务逻辑,负责处理业务逻辑,如处理用户请求、实现业务规则等。Service通常通过调用DAO提供的数据访问接口来实现数据的访问和操作,同时也负责处理事务和异常等。 4. Controller Controller是控制器,负责处理用户请求,并调用Service中的方法来处理请求。Controller通常包含了Web页面、Servlet、Struts2或SpringMVC框架中的Action等,它们负责接收用户请求,获取请求参数并调用相应的Service方法,然后将处理结果返回给用户。 以上就是四个常见的作用和职责。通过将应用程序按照不同的进行分离,可以提高应用程序的可维护性、可扩展性和可测试性,同时也使应用程序更加清晰和易于理解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值