温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
  • 忘记密码?
登录注册×
获取短信验证码
其他方式登录
点击 登录注册 即表示同意 《亿速云用户服务条款》
  • 服务器
  • 数据库
  • 开发技术
  • 网络安全
  • 互联网科技
登 录 注册有礼
最新更新 网站标签 地图导航
产品
  • 首页 > 
  • 教程 > 
  • 互联网科技 > 
  • 大数据 > 
  • java三层架构和DDD分层架构是什么

java三层架构和DDD分层架构是什么

发布时间:2022-03-22 16:50:56 来源:亿速云 阅读:1288 作者:iii 栏目: 大数据

本篇内容主要讲解“java三层架构和DDD分层架构是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“java三层架构和DDD分层架构是什么”吧!

三层架构

传统的三层架构主要分为业务接口层、业务逻辑层、数据访问层

java三层架构和DDD分层架构是什么

  • 业务接口层:主要是API的定义,包括资源路径定义、请求报文接受、响应报文返回、请求编码等定义的内容;

  • 业务逻辑层:主要做业务逻辑处理,这一层包括数据映射DTO转VO,业务核心逻辑编写,组合不同数据仓库,做业务逻辑;

  • 数据访问层:主要做数据存储,包括数据映射VO转PO,数据接口的定义,映射XML的编写。

DDD分层架构

DDD分层架构也可以叫四层架构,主要由用户接口层、应用层、领域层、基础层;

java三层架构和DDD分层架构是什么

  • 用户接口层:负责向用户显示信息和解释用户指令,比如用户、程序、自动化脚本、批处理脚本等;

  • 应用层:主要用于协调多个聚合的服务和领域对象完成服务编排和组合,可以调本地也可以调远程的服务、包括权限验证、事务控制、防重幂等,不要把核心的业务逻辑放到这里;

  • 领域层:实现核心逻辑,包括聚合根、实体、值对象、领域服务,包括业务扩展点、校验规则、组合聚合服务等相关功能;

  • 基础层:提供通用的技术和基础服务,包括一些第三方工具类、缓存、数据库、文件等,采用依赖倒置的设计,于其他层解耦。

演变

三层架构向DDD架构演变,主要发生在逻辑层和数据库访问层

java三层架构和DDD分层架构是什么

  • 新增DTO,给前端数据可用性更高,更灵活;

  • 三层架构的业务逻辑层改为应用层和领域层,使得业务逻辑不混乱,应用快速响应前端的变化;

  • 基础层和数据访问层的设计变化,通过依赖倒置实现基础设置对基础资源的解耦,应对主流技术的变化。

项目结构

java三层架构和DDD分层架构是什么

用户接口层

  • Assembler:DTO与实体对象相互转换和数据交换,与DTO同时出现;

  • Dto:数据传输载体,DTO可以将领域对象与外界隔离;

  • Facade:粗接口粒度定义,将请求给多个应用服务处理;

应用层

  • event: 主要存放事件相关代码,包括两个子目录publish和subscribe,放发布订阅相关代码,这里可以领不同领域服务订阅也可以是微服务之间的订阅;

  • service:应用服务,主要对外部的服务进行封装、编排和封装,提供粗粒度的服务,也是一段独立的业务逻辑

领域层

  • Aggregate:聚合软件包的根目录,根据聚合的名称命名,里面可以定义实体、聚合根、实体、值对象以及领域服务,可以独立拆分成微服务;

  • Entity:存放聚合根、实体、值对象、工厂模式相关 代码,统一实体的相关逻辑,都放在该类中,采用充血模式;

  • Event:存放事件实体以及事件活动相关的逻辑代码;

  • Service:领域服务,根据不同的实体组合的业务逻辑;

  • Repository:存放聚合查询和持久化领域对象的代码;

基础层

  • Config:主要存放配置相关代码,比如springboot自动配置内和集成第三方组件的配置;

  • Util:主要存放平台、开发框架、消息、数据库、缓存、文件、总线、网关、第三方类库、通用算法等基础代码,你可以为不同的资源类别建立不同的子目录;

示例代码

java三层架构和DDD分层架构是什么

到此,相信大家对“java三层架构和DDD分层架构是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节
推荐阅读:
  1. 三层架构和MVC的区别是什么
  2. 三层架构

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java ddd
  • 上一篇新闻:
    confluence怎么使用
  • 下一篇新闻:
    DDD的基本概念是什么

猜你喜欢

  • 创建外键的sql语句注意事项
  • 创建外键的sql语句对性能影响
  • 创建外键的sql语句是否必要
  • 创建外键的sql语句中ON DELETE用法
  • 创建外键的sql语句能否自动创建索引
  • 创建外键的sql语句在设计上的考虑
  • SQL的HAVING如何用于筛选
  • 如何在多表查询中使用SQL的HAVING
  • SQL的HAVING与WHERE的区别是什么
  • 什么时候应该使用SQL的HAVING
最新资讯
  • Linux推送服务的消息推送与HTTP/2协议的集成优势
  • Linux推送服务的消息推送与MQTT协议的对比与选择
  • Linux推送服务的消息推送如何支持WebSocket的二进制消息
  • Linux推送服务的消息推送与DNS解析优化的关系
  • Linux推送服务的消息推送如何与CDN网络结合提升速度
  • Linux推送服务的消息推送与TCP/IP协议栈的调优
  • Linux推送服务的消息推送与HTTPS加密通信的实现
  • Linux推送服务的消息推送与负载均衡算法的选择与优化
  • Linux推送服务如何有效管理长连接
  • Linux推送服务的消息推送与WebSocket的握手过程优化
相关推荐
  • 经典三层架构和MVC的关系
  • java的三层架构是什么?
  • java三层架构原理与作用小结
  • MVC和三层架构有什么区别
  • Linux系统的架构和网络分层
  • 软件架构要怎么分层和分模块
  • 互联网分层架构的本质是什么
  • Po.et的三层架构是什么
  • 什么是DDD分层架构
  • web三层架构工作原理是什么

相关标签

javafx教程 javadoc java 高并发 继续学习 part1 java架构师 java日志 java面试 java面试题 java web java架构 java基础 javaweb项目 javase java-ee java类 java开发环境 javac java数组 javascript/jquery java string rxjava2
AI

PHP网站源码横岗网站关键词优化永湖关键词按天收费南联网站制作设计同乐百度网站优化惠州如何制作网站坪地网站设计模板大浪seo南联SEO按天扣费双龙网站优化排名丹竹头seo观澜外贸网站设计塘坑网页制作坪山企业网站设计坑梓网络推广宝安网站定制坂田SEO按天收费深圳关键词排名包年推广布吉设计公司网站横岗优化荷坳网页制作坑梓企业网站改版广州设计公司网站南山网站建设木棉湾高端网站设计大鹏SEO按天收费宝安网站推广系统同乐SEO按天收费民治网站搜索优化光明高端网站设计广州百度网站优化排名歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化