您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 人事档案/员工关系 > Struts框架详解_模型组件_3
HandsOnStruts框架详解HandsOn课程内容Struts入门Struts框架详解Struts其他主要技术Struts项目实践HandsOnStruts框架详解配置文件控制器模型组件Struts视图组件Struts标记库HandsOnStruts模型模型的基本概念概念模型与设计模型业务逻辑层数据持久层HandsOn模型的基本概念模型是应用中最重要的一部分,包包含了业务实体和业务规则,负责访问和更新持久化数据。Struts并没有为设计和创建模型组件提供现成的框架,但它可以使用其他的模型框架,如EJB,JDO,常规JavaBean以及其他的ORM产品为有利于维护数据的完整性,减少数据冗余,提高可重用性,应该把所有的模型组件放在系统中的同一个位置。模型应该和视图以及控制器之间保持独立。模型从来不关心何种客户或框架在使用它。原则:依赖性上行,数据下行。意思是在一个层次体系中,上面的层会依赖下面的层,但下面的层不能依赖其上面的层。HandsOn依赖性下行数据上行客户层Struts框架层模型层持久层网络层如果在模型组件中importStruts框架中的类和数据包,就违反了以上原则。下层耦合到上层组件,会使系统的维护、重用和扩展变得困难。HandsOn概念模型与设计模型概念模型用来模拟应用中的真实实体,描述每个实体的概念和属性以及实体关系,但是不描述实体行为。设计模型是设计阶段在概念模型的基础上创建的设计文档包括类图、交互图等。根据UML定义,实体(类)之间的关系种类关联聚集---整体与部分之间的关系组合---更强的聚集关系依赖继承实现HandsOn业务逻辑层-BO对象的概念与应用定义业务对象,即BusinessObject(BO),是对真实世界的实体的软件抽象。它可以代表业务领域中的人、地点、事物或概念。业务对象的重要标准是看是否拥有状态和行为。特征包括状态和行为代表业务领域中的人、地点、事物或概念可以重用只对外暴露接口,隐藏细节类型实体业务对象-代表应用中的实体,是业务领域的名词过程业务对象-代表业务过程和流程,通常依赖实体,是业务领域的动词事务业务对象-代表应用中的一些事件(异常、警告、超时)HandsOnHandsOn业务逻辑层-业务逻辑的实现AccountManagerImplOrderManagerImplProductManagerImpl业务(BO)接口业务(BO)实现类VO对象数据持久层DAO设计模式edu.yhy.struts.bbs.service包HandsOn数据持久层数据持久化是指通过数据库或其他信息存储方式将系统需要的数存的数据保持在持续性信息载体中的过程J2EE持久框架数据访问对象(DAO)设计模式常用ORMHandsOnJ2EE持久框架表示层:特定表示层框架或开源框架、如Struts、Spring业务逻辑数据持久层:数据访问对象(DAO)JDOEntityBeanWebServiceJDBCOracleSQLServerDB2值对象(VO)值对象(VO)HandsOn数据访问对象(DAO)设计模式概念DataAccessObject的缩写,SunJavaCenter模式集合中最早提出的设计模式之一。作用:抽象数据源-DAO模式的用户不知道数据来自什么DB,及用什么方式连接和访问,也不知道数据库的物理和逻辑位置。抽象相关的CRUD逻辑-指的是基本的Create、Read、Update、Delete操作。DAO模式可以使用任意的Java访问,包括JDBC、EJB、JDO/Hibernate以及任何其他的ORM产品。DAO完全分离业务逻辑与数据逻辑,最大限度减少开发人员混合业务与数据逻辑。实现:BO,此设计模式的客户端DAO接口DAO实现类DAO工厂数据源:各种数据库,XML文件,纯文件系统VO或DTO,用于把数据返回给客户端。HandsOnDAO模式类图HandsOnDAO实现DAO接口DAO实现类DAO工厂edu.yhy.struts.bbs.dao包HandsOn常用ORMHibernate(轻量级ORM)JDOEJB-实体Bean(重量级ORM)EJB3.0把JDO和Hibernate整合形成,变为轻量级产品其他ORM产品TopLinkFreeFormExpressoVBSF……HandsOnActionFormBOImpl实现类ActionBOFactoryBO接口BO接口DAOFactoryBOImpl实现类DAO接口DAOImpl实现类DAO接口DAOImpl实现类JDBC/实体Bean/Hibernate/其他ORMDBServerStruts层业务层BO持久层DAOVO在每一层中传数据
本文标题:Struts框架详解_模型组件_3
链接地址:https://www.777doc.com/doc-3650807 .html