首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

优秀的 Java 项目代码该如何分层

2021Java面试宝典 的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层 2.2优化分层 从我们的业务开发总结了一个较为的理想模型,这里要先说明一下由于我们的rpc框架选用的是thrift可能会比其他的一些rpc框架例如dubbo会多出一层...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层。...2021Java面试宝典 最后,如果你的团队有更好的分层,或者上面所描述的有什么错误的地方还请留言指正一下。

1.7K00

优秀的 Java 项目,代码都是如何分层的?

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层。...主要负责“操作数据库的某张表,映射到某个java对象”,dao应该只允许自己的Service访问,其他Service要访问我的数据必须通过对应的Service。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

48550
您找到你想要的搜索结果了吗?
是的
没有找到

优秀的 Java 项目代码都是如何分层的?

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...所以一个好的应用分层需要具备以下几点: 方便后续代码进行维护扩展; 分层的效果需要让整个团队都接受; 各个层职责边界清晰。 2、如何进行分层 2.1、阿里规范 在阿里的编码规范约束的分层如下: ?...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

3K50

项目分层和解析

hvtart/bjae/sko15s3g.htm DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件定义此接口的实现类...,然后就可在模块调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。   ...同样是首先设计接口,再设计其实现的类,接着再Spring的配置文件配置其实现的关联。这样我们就可以在应用调用Service接口来进行业务处理。...Controller层负责具体的业务模块流程的控制,在此层里面要调用Serice层的接口来控制业务流程,控制的配置也同样是在Spring的配置文件里面进行,针对具体的业务流程,会有不同的控制器,我们具体的设计过程可以将流程进行抽象归纳...View层主要负责前台jsp页面的表示,    DAO层,Service层这两个层次都可以单独开发,互相的耦合度很低,完全可以独立进行,这样的一种模式在开发大项目的过程尤其有优势,Controller

33640

项目分层设计原则(三)

项目拆分与聚合 举个例子:生产一辆汽车,里面的每个零部件,一个厂商不一定都有实力全部生成出来,就拆分成一个一个的,自己只负责其中几个,其余的从其他厂商购买。 最后再整合成一个产品。...也就是项目中的拆分、聚合,能达到复用等目的。 比如:生产 3 个型号的汽车,其中大部分零部件都是一样的,只需要去做不一样的再整合在一起就行了。不需要重复的造轮子。...Maven 聚合项目 写一个聚合性 pom.xml 将一下模块聚合起来,打成 war 或则 jar ● common.jar: ● pojo.jar :实体类、数据库交互的类等 ● mapper.jar...:dao 层 ● service.jar ● controller.jar ● … 小型项目这些一般是在一个项目中。

20220

在阿里Java大牛们都是这样对Java项目代码分层

作者:咖啡拿铁 代码分层,对于任何一个Java开发来说应该都不陌生。一个好的层次划分不仅可以能使代码结构更加清楚,还可以使项目分工更加明确,可读性大大提升,更加有利于后期的维护和升级。...从另外一个角度来看,好的代码分层架构,应该是可以很好的匹配上单一职责原则的。这样就可以降低层与层之间的依赖,还能最大程度的复用各层的逻辑。本文就来介绍下Java 项目的代码到底应该如何分层。...的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层 2.2优化分层 从我们的业务开发总结了一个较为的理想模型,这里要先说明一下由于我们的rpc框架选用的是thrift可能会比其他的一些rpc框架例如dubbo会多出一层

2.4K20

详解Java业务领域分层模型的vopodtopojobo

分层的目的,就是保证复用和相对稳定性! 开局一张图,后文全靠编 ? VO值对象(Value Object) new关键字创建,由GC回收。...PO持久对象(Persisent Object) 向数据库添加新数据时创建,删除数据库数据时削除的。并且它只能存活在一个数据库连接,断开连接即被销毁。 PO是有状态的,每个属性代表其当前的状态。...可以看成是与数据库的表相映射的java对象。 最简单的PO就是对应数据库某个表的一条记录,多个记录可以用PO的集合。 PO应该不包含任何对数据库的操作。...POJO(plain ordinary java object) 简单无规则java对象 纯的传统意义的java对象。...就是说在一些Object/Relation Mapping工具,能够做到维护数据库表记录的persisent object完全是一个符合Java Bean规范的纯Java对象,没有增加别的属性和方法。

1.5K10

java分层架构概念

1.JAVAAction层, Service层 ,modle层 和 Dao层的功能区分?(下面所描述的service层就是biz)       首先这是现在最基本的分层方式,结合了SSH架构。...的对象)作用是一暂时存储数据方便持久化(存入数据库或者写入文件)而是 作为一个包裹封装一些数据来在不同的层以及各种java对象中使用    dao是数据访问层  就是用来访问数据库实现数据的持久化(把内存的数据永久保存到硬盘...其实你一个项目一个service和一个DAO其实也一样可以操作数据库, 只不过那要是表非常多,出问题了,那找起来多麻烦,而且太乱了   (3)、好处就是你的整个项目非常系统化,和数据库的表能一致,而且功能模块化...层功能的体现   3.java的action是什么,DAO又是什么?...可以看成是与数据库的表相映射的java对象。最简单的PO就是对应数据库某个表的一条记录,多个记录可以用PO的集合。PO应该不包含任何对数据库的操作。

1.6K41

Java分层概念(转)

---- layout: default title: Java分层概念(转) category: [技术, Java, 代码学习] comments: true --- Java分层概念(转)...对于分层的概念,似乎之间简单的三层,多了,就有点难以区分了,所以收藏了这个. ervice是业务层 action层即作为控制器 DAO (Data Access Object) 数据访问 1.JAVA...其实你一个项目一个service和一个DAO其实也一样可以操作数据库, 只不过那要是表非常多,出问题了,那找起来多麻烦,而且太乱了 (3)、好处就是你的整个项目非常系统化,和数据库的表能一致,而且功能模块化...可以看成是与数据库的表相映射的java对象。最简单的PO就是对应数据库某个表的一条记录,多个记录可以用PO的集合。PO应该不包含任何对数据库的操作。...]Java分层概念(转) - 1iqueen - 博客园 https://www.cnblogs.com/lkboy/p/4210742.html

3.3K40

谈谈项目代码的应用分层

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层。...主要负责“操作数据库的某张表,映射到某个java对象”,dao应该只允许自己的Service访问,其他Service要访问我的数据必须通过对应的Service。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

35020

Java框架型项目从入门到装逼】第十二节 项目分层

这一节我们开始对项目进行分层,一般来说,一个web项目的层次结构如下图所示: controller层为我们的控制层,用来接收用户的请求,比如新增一个学生的信息,新增的请求最先就是走到这一层。...所以,controller层必然拥有某一个service层的引用。 service层主要用来处理一些业务逻辑,不做任何的数据库操作。...数据库的操作都交给dao层来做,因此,在service层必然拥有一个dao层的引用。...implements UserDao { @Override public void addUser(Student student) { } } 图解: 以上就是整个的分层结构...,然后,我们继续学生新增的业务流程,改写一下dao层的方法: package com.app.dao.impl; import java.util.HashMap; import java.util.Map

85571

实时数仓项目架构分层

一、滴滴实时数仓项目 在公司内部,我们数据团队有幸与顺风车业务线深入合作,在满足业务方实时数据需求的同时,不断完善实时数仓内容,通过多次迭代,基本满足了顺风车业务方在实时侧的各类业务需求,初步建立起顺风车实时数仓...,完成了整体数据分层,包含明细数据和汇总数据,统一了DWD层,降低了大数据资源消耗,提高了数据复用性,可对外输出丰富的数据服务。...例如分层结构;比如ODS层,明细层,汇总层,乃至应用层,他们命名的模式可能都是一样的。...命名规范:基于实时数仓的特殊性不做硬性要求 二、美团OneData数仓项目 OneData: 阿里巴巴提出的数仓建设标准 摘要 美团基于OneData思想和现有业务架构情况,提出了新的标准和目标...实现方法:统一归口和出口 统一归口:业务归口统一、设计归口统一和应用归口统一,从底层保证了数仓建设的三特性和三效果 统一出口: 交付标准化 数据资产管理:统一维度,指标元数据出口等 基于此,实现了分层模型

75630

你的项目应该如何正确分层

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层 2.2优化分层 从我们的业务开发总结了一个较为的理想模型,这里要先说明一下由于我们的rpc框架选用的是thrift可能会比其他的一些rpc框架例如dubbo会多出一层...主要负责“操作数据库的某张表,映射到某个java对象”,dao应该只允许自己的Service访问,其他Service要访问我的数据必须通过对应的Service。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

2.5K30

你的项目应该如何正确分层

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层 2.2优化分层 从我们的业务开发总结了一个较为的理想模型,这里要先说明一下由于我们的rpc框架选用的是thrift可能会比其他的一些rpc框架例如dubbo...主要负责“操作数据库的某张表,映射到某个java对象”,dao应该只允许自己的Service访问,其他Service要访问我的数据必须通过对应的Service。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

50530

你的项目应该如何正确分层

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层 2.2优化分层 从我们的业务开发总结了一个较为的理想模型,这里要先说明一下由于我们的rpc框架选用的是thrift可能会比其他的一些rpc框架例如dubbo会多出一层...主要负责“操作数据库的某张表,映射到某个java对象”,dao应该只允许自己的Service访问,其他Service要访问我的数据必须通过对应的Service。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

52710

Spirng项目分层需要接口层吗?

很多小伙伴都做过Spring项目(基本都是SpringBoot项目),在项目分层上,有些项目带了接口层,有些项目没有,需要接口层吗? 分享一位同学的疑问: ?...接口层原因 其实早期Spring实现注入、AOP等,都是JDK自带的动态代理,JDK动态代理要求必须使用接口,所以早期的项目都是有各种接口,很多项目都一直延用,很多老程序员也都养成了习惯。...还有另一个原因,就是程序员会觉得有了接口层,项目多少能用点设计模式,看起来高大上一点。 是否有必要? 个人觉得没必要,作为业务逻辑来说,面向接口编程费力不讨好。...我做过的很多项目,都没加接口层,也没啥问题。 接口一般配合上设计模式,写一些通用逻辑很好用,写业务功能没必要。 当然,用接口也没问题

40220

你的项目应该如何正确分层

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。...阿里巴巴规约分层比较清晰简单明了,但是描述得还是过于简单了,以及service层和manager层有很多同学还是有点分不清楚之间的关系,就导致了很多项目中根本没有Manager层的存在。...下面介绍一下具体业务应该如何实现分层 2.2优化分层 从我们的业务开发总结了一个较为的理想模型,这里要先说明一下由于我们的rpc框架选用的是thrift可能会比其他的一些rpc框架例如dubbo会多出一层...主要负责“操作数据库的某张表,映射到某个java对象”,dao应该只允许自己的Service访问,其他Service要访问我的数据必须通过对应的Service。...当然这种分层其实见仁见智, 团队的所有人的分层习惯也不同,所以很难权衡出一个标准的准则,总的来说只要满足职责逻辑清晰,后续维护容易,就是好的分层

91420

Java分层领域模型使用解读

那么我们需要思考以下几个问题: 为什么需要这些分层领域模型? 实际开发每种分层领域模型都会用到吗? 本小节我们将重点分析和解答这些问题。 2. 分层模型 2.1 常见的分层模型有哪些?含义是什么?...开发的应用 讲完了概念和优势,大家可能会认为文字描述有些抽象,接下来通过查询和返回两个视角为大家展示实际项目中的一种常见的用法(贫血模型)。...3.1 查询视图 我们先从请求访问的视角去了解不同分层数据模型在实际项目中一种常见用法。...实践分层领域模型能够提高项目的健壮性、可拓展性和可维护性,降低了系统内部各层的耦合度。 上面只是给出一种参考,很多团队对部分分层模型的理解会有差异,实际的使用过程根据自己团队的规模可以适当变通。...比如有很多团队项目并不是特别大,为了降低复杂度,只用到了 DTO 、VO 、DO 三种分层领域模型。

45520

RobotFrameWork接口项目分层及通用控制方式

由于现在公司新项目的启动和自身负责的开发工作量的增剧,基本上更新文章都只能利用周末零碎时间来写,一个字一个字的码出来的,另外透露一下,下面分享的内容有部分核心思想笔者是将之前发表过的技术专利的内容开放了一小部分哦...分层原则 分层目标:接口数据和接口业务分离 可再细分为: 项目目录结构分层 接口数据、接口用例、接口业务分离 公共方法、数据分离 3分层实施 3.1、项目结构分离 具体要实施接口自动化的产品项目...其中,项目主目录,按分层思想,又可根据接口功能分成不同模块,不同模块可作为二级目录。...*项目的功能模块划分以具体的项目而定,在实际的接口自动化项目开展,需要求开发人员,提供项目接口对接文档。接口测试人员,依据接口对接文档描述,划分具体的功能模块及某个功能模块下包含了哪些具体接口。...数据控制文件的设计核心在于,在变量文件定义构造数据的函数方法,然后将方法的返回值赋给一个变量,在具体的接口引用该变量。 4实例化图解框架分层 4.1 功能模块分层实例图解 ?

1K20

Java 理论概念·Java 服务端分层模型

Java 服务端分层模型 复杂的软件系统都会采用分层的架构设计,分层之后,每一层职责鲜明,整体上降低了系统的耦合性,提高了健壮性。...Java 服务端开发亦是如此,采用分层架构,针对每一层,对应对象的职责是不同的,以及层与层之间也需要通信,故而有着不同的“概念”对象。...分层领域模型 分层领域模型规约: DO(Data Object):与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。...可以看成是与数据库的表相映射的 java 对象。最简单的 PO 就是对应数据库某个表的一条记录,多个记录可以用 PO 的集合。PO 应该不包含任何对数据库的操作。...就是说在一些 Object/Relation Mapping 工具,能够做到维护数据库表记录的 persisent object 完全是一个符合 Java Bean 规范的纯 Java 对象,没有增加别的属性和方法

72620
领券