描述J2EE框架的多层结构,并简要说明各层的作用。

解答:

1) Presentation layer(表示层)

a. 表示逻辑(生成界面代码)

b. 接收请求

c. 处理业务层抛出的异常

d. 负责规则验证(数据格式,数据非空等)

e. 流程控制

2) Service layer(服务层/业务层)

a.封装业务逻辑处理,并且对外暴露接口

b.负责事务,安全等服务

3) Persistence layer(持久层)

a 封装数据访问的逻辑,暴露接口

b.提供方便的数据访问的方案(查询语言,API,映射机制等)

4)Domain layer(域层)

a. 业务对象以及业务关系的表示

b. 处理简单的业务逻辑

c. 域层的对象可以穿越表示层,业务层,持久层

软件分层结构使得代码维护非常方便,设计明确,各层独立,专注自己擅长的领域。

描述J2EE框架的多层结构,并简要说明各层的作用。的更多相关文章

  1. 需要 了解 j2ee 框架

    只要你是用java来做WEB应用,绝对少不了使用j2ee框架,目前流行的有 l\5qa_{z   Y(/VW&K&:   )zt*am;   1)struts   2)spring   ...

  2. ssh框架搭建的基本步骤(以及各部分作用)

    ssh框架搭建的基本步骤(以及各部分作用)     一.首先,明确spring,struts,hibernate在环境中各自的作用.   struts: 用来响应用户的action,对应到相应的类进行 ...

  3. ABP框架系列之三十九:(NLayer-Architecture-多层架构)

    Introduction Layering of an application's codebase is a widely accepted technique to help reduce com ...

  4. Java匹马行天下之J2EE框架开发——Spring—>Spring框架知多少

    ————也许我注定成不了一个伟大的人,但是至少我可以做一个很棒的自己.我想我现在应该做的不是瞻前顾后,而是活在当下,正确认知自己,做好自己现在的工作,努力提升自己的能力,踏踏实实地做一个程序员 一.思 ...

  5. Java匹马行天下之J2EE框架开发——Spring—>用IDEA开发Spring程序(01)

    一.心动不如行动 一.创建项目 *注:在IDEA中我创建的Maven项目,不了解Maven的朋友可以看我之前的博客“我们一起走进Maven——知己知彼”,了解Maven后可以看我之前的博客“Maven ...

  6. Spring: J2EE框架

    Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本.该框架基于 Exper ...

  7. j2EE框架collection

    在 Java2中,有一套设计优良的接口和类组成了Java集合框架Collection,使程序员操作成批的数据或对象元素极为方便.这些接口和类有很多对抽象数据类型操作的API,而这是我们常用的且在数据结 ...

  8. J2EE框架(Struts&Hibernate&Spring)的理解

    SSH:Struts(表示层)+Spring(业务层)+Hibernate(持久层)Struts:Struts是一个表示层框架,主要作用是界面展示,接收请求,分发请求.在MVC框架中,Struts属于 ...

  9. [J2EE框架][Debug]

    注意xml头部问题 比如在xx-servlet中注意: <mvc:annotation-driven/> <context:component-scan base-package=& ...

随机推荐

  1. vue2.0快速构建项目

    准备工作:已经安装了nodejs,已经安装了vue-cli $ mkdir gankbook $ cd gankbook $ vue init webpack-simple 按照需要写好信息,这将会写 ...

  2. NoSQL的CURD结构体的定义

    NoSQL的CURD结构体的定义 flyfish 2015-7-23 參考MongoDB Wire Protocol  在这里document部分使用json表示 使用boost::property_ ...

  3. ant-design 设置 DatePicker 默认值

    1.代码 render() { const { value } = this.props; return ( <React.Fragment> { value ? <DatePick ...

  4. 02-hibernate注解-属性级别注解

    添加方式: 一是写在属性字段上面. 二是写在属性的get访问器上面. 主要有: @Id, @SequenceGenerator @GeneratedValue @Colum @Embedded @Em ...

  5. CSS3图片折角效果

    本篇文章由:http://xinpure.com/css3-picture-angle-effect/ 图片折角效果主要是通过设置 border 属性实现的效果 效果预览 效果解析 假设我们将一个元素 ...

  6. java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis=100/虚拟机调优

    JVM的堆的内存, 是通过下面面两个参数控制的 -Xms 最小堆的大小, 也就是当你的虚拟机启动后, 就会分配这么大的堆内存给你 -Xmx 是最大堆的大小 当最小堆占满后,会尝试进行GC,如果GC之后 ...

  7. iOS 键盘自适应(IQKeyboardManager)使用小结

    IQKeyboardManager Github地址 经常在开发一个应用程序,我们遇到了一个问题,iPhone的键盘上滑覆盖的UITextField / UITextView.IQKeyboardMa ...

  8. 转: RabbitMQ实现中AMQP与MQTT消息收发异同

    转自:http://www.cnblogs.com/lucifer1997/p/9438186.html 实现了AMQP与MQTT(至多一次)后,用多个队列以topic exchange的方式用相同交 ...

  9. SQL数据库相关

    数据库相关知识点 SQL, 对表的理解, 对表的主键, 外键的理解, 视图, 为什么要有视图, 视图有什么功能, 视图与表有什么区别 主键是唯一标识的一条记录,不能重复,不能为空. 表的外键是另一个表 ...

  10. U3D Debug.DrawRay

    Debug.DrawRay第二个参数方向,事实上需要手动输入长度.并且不是无限长的射线,是根据方向的长度来的 如果参数不指定颜色,绘制出来的就是白色