我的课件43常见设计框架

上传人:E**** 文档编号:90934050 上传时间:2019-06-20 格式:PPT 页数:29 大小:3.09MB
返回 下载 相关 举报
我的课件43常见设计框架_第1页
第1页 / 共29页
我的课件43常见设计框架_第2页
第2页 / 共29页
我的课件43常见设计框架_第3页
第3页 / 共29页
我的课件43常见设计框架_第4页
第4页 / 共29页
我的课件43常见设计框架_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《我的课件43常见设计框架》由会员分享,可在线阅读,更多相关《我的课件43常见设计框架(29页珍藏版)》请在金锄头文库上搜索。

1、领域设计 常见设计框架,计算机学院软件工程系 Email:Xiahui_ Telphone:15829202190 QQ:79003370(不聊天),目 录,表示层-Struts框架 业务层-Spring框架 数据层-Hibernate框架,分层架构中常见框架 表示层 Struts、Tapestry、Webwork、spring mvc(JAVA) Zend Framework(PHP)、 .NET MVC 4.5(C#) 业务层 spring 数据层 hibenate,mybatis、ToLink、OJB,常见框架,Struts框架,Struts框架是典型的运用MVC模式设计出来的框架,St

2、uts框架 View 界面(Form,WEB页面) Model 业务逻辑对象(领域对象、Service类、EJB、WEB服务) Controller 控制数据验证和页面的跳转 Action Servlet+Action,Struts框架,Stuts框架与分层架构,Struts框架,View,Controller,Model,Struts框架,Stuts工作原理,Struts框架, action org.apache.struts.action.ActionServlet/ ,ActoinServlet 一个WEB系统只有一个ActionServlet,负责对用户的请求分配响应处理对象 在Web

3、 Application配置文件(web.xml)中描述,Struts框架,Actoin ActionServlet根据用户的请求调用不同的Action,Struts框架,Actoin ActionServlet根据用户的请求调用不同的Action,Spring框架,Spring优势 Spring框架为J2EE平台的开发者提供的是一种“对象管理”技术,也就是为开发者解决包括 :对象的生命周期、对象之间的依赖关系建立、对象的缓存实现等方面问题的管理技术。 Spring既是一个AOP框架和IoC容器 Spring是非入侵的框架,Spring框架,IOC Ioc(Inversion of Contr

4、ol)中文译名控制反转 类与类之间的关系由上层系统来配置,而不是程序控制,比如 老师上什么课,是由学院来决定的,而不是课程和老师自己决定的,Class Teacher Course course=new UMLCourse(); 会有什么后果 ,Class UmlCourse Teacher teacher = new Xiahui(); 会有什么后果 ,Spring框架,IOC,现有一个服务接口,只有一个行为, Interface IService go(); Service类是接口IService的实现者 public Service implements IService public

5、void go() . ,Spring框架,IOC 通过spring的配置文件创建对象,并设置对象与对象之间的关系,Consumer类想调用这个服务,最原始的方法: public Consumer private IService service = null; public Consumer() service=new Service (); public void doSomething() service.go(); ,Spring框架,不能实现IOC的方式,1 构造子注入 通过构造函数,将接口的具体实现类注入进来。代码如下 public Consumer private IServic

6、e service = null; public Consumer(IService service) this.service=service public void doSomething() service.go(); ,Spring框架,IOC实现的三种方式,调用过程如下 Service service=new Service(); Consumer consumer=new Consumer(service); consumer.doSomething();,Spring框架,IOC实现的三种方式,2 Setter方法注入 public Consumer private IServi

7、ce service = null; public SetService(IService service) this.service=service; public void doSomething() service.go(); ,调用过程如下 Service service=new Service(); Consumer consumer=new Consumer(); consumer.SetService(service); consumer.doSomething();,3 接口注入 接口注入是指将客户类所有注入的方法抽取到一个接口中,客户类通过实现这一接口提供注入的方法。为了采取

8、接口注入的方式,需要声明一个额外的接口: public interface Injectable void injectService(IService service); ,Consumer类通过继承Injectable接口注入 public Consumer implements Injectable private IService service = null; public injectService(IService service) this.service=service; public void doSomething() service.go(); ,Spring框架,IO

9、C实现的三种方式,Hibernate框架,O/R映射工具 自动将对象中的属性转换成数据库中记录 对对象与数据库记录的一致性进行管理,常见O/R映射工具 Hibernate 在配置文件设置对象的属性与表的字段关系 Mybatis 将SQL写入配置文件,public class User private int id; private String name; private Date birthDay; /getter setter ,配置文件hbm.xml ,Hibernate框架,Hibernate映射简单例子,多对一(Employee - Department) 一对多(Departmen

10、t-Employee) 一对一(room - door) 多对多(teacher - student),Hibernate框架,Hibernate常见四种映射,多对一映射(Employee Department),Hibernate框架,映射文件 ,一对多映射(Department-Employee),Hibernate框架,映射文件 ,1)基于主键的one-to-one(person的映射文件) idCard ,一对一映射(Person - IdCard),Hibernate框架,在操作和性能方面都不太理想,所以多对多的映射使用较少,实际使用中最好转换成一对多的对象模型;Hibernate会

11、为我们创建中间关联表,转换成两个一对多。 ,多对多(teacher -student),Hibernate框架,Mybatis框架,Mybatis优势,减少了61%的代码量 最简单的持久化框架 架构级性能增强 SQL代码从程序代码中彻底分离,可重用 增强了项目中的分工 增强了移植性,Mybatis概述 Clinton Begin开发,现在由APACHE基金会支持的一个持久化框架。,Mybatis框架,Mybatis的配置文件查询, select * from person where id= #id ,Mybatis框架,Mybatis的配置文件插入, INSERT INTO person( id,name,sex ) VALUES ( #id, #name, #sex ) ,Q & A,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号