Java开发应用分层
2023-03-27 16:04:11
Java开发将面临许多设计问题,应用分层问题是开发人员关注的焦点。让我们来看看这篇文章Java开发应用分层开发应用相关知识。
一、Java开发应用分层图分析
下默认情况下,上层依赖于下层,箭头关系可以直接依赖。例如,开放接口层可以依赖于Web 层也可以直接依赖 Service 层,按此类推:
• 开放式接口层:可直接封装 Service 方法暴露成 RPC 接口;通过 Web 封装成 http 接口;安装网关 全控制、流量控制等。
• 终端显示层:模板渲染和执行各端显示层。目前主要是 velocity 渲染,JS 渲染,JSP 渲染、移动终端显示等。
• Web 层:主要转发访问控制,验证各种基本参数,或简单处理不再用的业务。
• Service 层:相对具体的业务逻辑服务层。
• Manager 层:一般业务处理层,具有以下特点:
1.对于第三方平台封装层,预处理返回结果和转换异常信息。
2.对 Service 缓存方案、中间件通用处理等层通用能力下沉。
3.与 DAO 层次交互,对多个 DAO 组合复用。
• DAO 层:数据访问层和底层 MySQL、Oracle、Hbase 等数据交互。
• 包括其他部门的外部接口或第三方平台 RPC 开放接口、基础平台、其他公司 HTTP 接口。
- Java开发应用规定分层异常处理
在 DAO 层产生的异常类型有很多,细粒度的异常不能用于 catch,使用 catch(Exception e)方式,并 throw new DAOException(e),日志不需要打印,因为日志在 Manager/Service 如果同台服务器再次打日志,则必须捕获并打印到日志文件中。浪费性能和存储。在 Service 当层出现异常时,必须将错误的日志记录到磁盘上,并尽可能带来参数信息,这相当于保护犯罪现场。
如果 Manager 层与 Service 同机部署,日志模式与 DAO 层处理是一致的,如果是单独部署的,则采用 Service 一致的处理方法。Web 层不应继续扔异常,因为它已经在顶层,如果你意识到这种异常会导致页面无法正常渲染,那么你应该直接跳转到友好的错误页面,加上用户容易理解的错误提示信息。打开接口层应将异常处理成错误代码和错误信息返回。
3. 分层模型规定:
• DO(Data Object):通过对应数据库表结构,该对象对应于数据库表结构 DAO 向上传输数据源对象。
• DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
• BO(Business Object):业务对象,由 Service 封装业务逻辑对象的层输出。
• AO(Application Object):应用对象,在 Web 层与 Service 层间抽象的复用对象模型非常接近显示层,复用度不高。
• VO(View Object):通常是显示层对象 Web 将传输到模板渲染引擎层的对象。
• Query:数据查询对象,各层接收上层查询请求。注意超过 2 查询包装个参数,禁止使用 Map 类来传输。
看完这篇文章,对于从事的人来说,Java开发的合作伙伴正在处理和设计java开发应用分层问题将起到很好的帮助作用。虽然不同的开发框架有不同的应用分层处理方法,但一般来说,它们是一样的。良好的应用分层对软件的整体运行效率和质量有很大的帮助!