SSM框架应用开发与案例实战全书ppt完整版课件整本书电子教案最全教学教程.ppt
《SSM框架应用开发与案例实战全书ppt完整版课件整本书电子教案最全教学教程.ppt》由会员分享,可在线阅读,更多相关《SSM框架应用开发与案例实战全书ppt完整版课件整本书电子教案最全教学教程.ppt(438页珍藏版)》请在一课资料网上搜索。
1、第一章 初识SSM框架本章目标v了解SSM框架及三个框架分工v了解Spring框架概念及 IoC、AOP概念v了解Hibernate框架概念v了解MyBatis框架概念v了解Hibernate框架和MyBatis框架的区别v了解Spring MVC框架概念2本章教学内容本章教学内容uSSM框架及三个框架分工框架及三个框架分工uSpring框架概念及框架概念及 IoC、AOP概念概念uHibernate框架概念框架概念uMyBatis框架概念框架概念uHibernate框架和框架和MyBatis框架的区别框架的区别uSpring MVC框架概念框架概念3SSM框架及三个框架分工 SSM(Spri
2、ng+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。是目前JAVA领域使用非常广泛也非常稳定的开源Web框架。 SSM框架是标准的MVC(Model-View-Controller)模式,将整个系统划分为表现层,控制器Controller层,业务逻辑Service层,数据访问Dao层四层。SpringMVC、Spring、MyBatis三个框架各有分工。SpringMVC框架负责请求的转发和视图管理,Spring框架实现业务对象管理,MyBatis框架则作为数据对象的持久化引擎完成数据持久化。4Sp
3、ring框架 Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,Spring一个最大的目的就是使JavaEE(Java Platform Enterprise Edition Java平台企业版)开发更加容易,它是为了解决企业应用开发的复杂性而创建的。 Spring是一个轻量级的控制反转IoC(Inversion of Control)和面向切面AOP(Aspect Oriented Programming)的容器框架。5MyBatis框架 将数据持久化到数据库中常用的框架有Hibernate、MyBatis。下面分别介绍一下。 1. Hibernate
4、简介 Hibernate是当前最流行的ORM(Object Relational Mapping对象关系映射)框架之一,对JDBC(Java Database Connectivity Java数据库连接)提供了较为完整的封装。Hibernate的O/R Mapping实现了POJO(Plain Ordinary Java Object普通的Java对象)和数据库表之间的映射,以及SQL(Structured Query Language结构化查询语言)的自动生成和执行。 6MyBatis框架 2. MyBatis 简介 MyBatis是一个基于Java的持久层框架,它支持定制化SQL、存储过
5、程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的POJOs(Plain Ordinary Java Objects,普通的Java对象)映射成数据库中的记录。7MyBatis框架v3. Hibernate和MyBatis的区别 (1)开发速度 Hibernate的真正掌握要比Mybatis困难,Hibernate比Mybatis更加重量级一些。 Mybatis需要我们手动编写SQL语句,回归最原始的方式,所以可以按需求指定查询的字段,提高程序的查询效率。 Hibernate也
6、可以自己写SQL语句来指定需要查询的字段,但这样破坏了Hibernate封装以及简洁性。8MyBatis框架3. Hibernate和MyBatis的区别 (2)数据移植性 Mybatis由于所有SQL语句都是依赖数据库书写的,所以扩展性,迁移性比较差。 Hibernate与数据库具体的关联都在XML(Extensible Markup Language可扩展标记语言)中,所以HQL(Hibernate Query Language Hibernate查询语言)对具体是用什么数据库并不是很关心。9SpringMVC框架 Spring MVC 属于SpringFrameWork 的后续产品,是一
7、个强大灵活的 Web 框架。Spring MVC也是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发。10本章总结v了解SSM框架及三个框架分工v了解Spring框架概念及 IoC、AOP概念v了解Hibernate框架概念v了解MyBatis框架概念v了解Hibernate框架和MyBatis框架的区别v了解Spring MVC框架概念11谢谢!本章内容本章内容一、一、SpringSpring框架概述框架概述 二、二、SpringSpri
8、ng体系结构体系结构三、三、SpringSpring特征特征四、四、Spring IoC/DISpring IoC/DI概概念念五、五、Spring IoCSpring IoC容器容器的使用方法的使用方法 IOCIOC容器的工作原理容器的工作原理 BeanFactoryBeanFactory接口及常用实现类接口及常用实现类XmlBeanFactoryXmlBeanFactory ApplicationContextApplicationContext接口及常用实现类接口及常用实现类 BeanFactoryBeanFactory和和ApplicationContextApplicationCon
9、text的区别的区别六、六、SpringSpring框架入门案例框架入门案例七、七、Spring 5Spring 5新特性新特性14本章目标v了解Spring框架v了解Spring体系结构v了解Spring特征v了解Spring IoC/DI概念v掌握SpringIoC容器的使用方法v掌握Spring框架入门案例v理解Spring 5的新特性15一、一、SpringSpring框架框架概述概述 二、二、SpringSpring体系结构体系结构三、三、SpringSpring特征特征四、四、Spring IoC/DISpring IoC/DI概概念念五、五、Spring IoCSpring Io
10、C容器容器的使用方法的使用方法六、六、SpringSpring框架入门案例框架入门案例七、七、Spring 5Spring 5的的新特性新特性 16本章目录 Spring框架概述 vSpring简介Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 目的:解决企业应用开发的复杂性。 功能:使用基本的JavaBean代替EJB,并提供了更多的企
11、业应用功能。 范围:任何Java应用 。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。6Spring的发展历程7Spring版本发展历史版本发展历史发布时间发布时间发布版本2003年年Spring 0.92004年年Spring1.02006年年Spring 2.0 Final Released2007年年Spring 2.52011年年Spring3.1 GA release2013年年Spring 4.02014年年Spring4.1.3 released2015年年Spring 4.2、4.32016年年Spring 4.3 GA2017年年Sp
12、ring 5.xSpring体系结构19Spring特征v轻量级 从大小和系统开支上说Spring都是轻量级的,而且Spring是非侵入式的:基于Spring开发的系统一般不依赖于Spring的类。v反向控制 Spring提倡反向控制实现松耦合。使用IOC,对象是被动接受依赖类而不是自动查找,实例化类的时候主动把他要的对象给他。v面向切面 Spring对面向切面编程提供了强大的支持,通过把业务逻辑从系统服务中分离了出来,系统对象只做他们该做的事情,而不关心其他。9Spring的特征vSpring即是一个容器又是一个框架。v容器 Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一
13、种容器,你可以配置你的每个bean如何被创建基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例以及它们是如何相互关联的。 v框架 Spring提供了很多基础的与业务逻辑无关的功能,比如:事务管理、持久化框架集成等等,使用Spring框架,开发人员可以专注于业务逻辑开发,这个意义上讲它是一个框架。 10Spring特征v方便程序的测试 可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。例如:Spring对Junit4支持,可以通过注解方便的测试Spring程序。v方便集成各种优秀
14、框架 Spring可以集成各种优秀的开源框架,如Struts,Hibernate、Hessian、Quartz等。v对声明式事务的支持 在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,这样我们可以专注于业务逻辑开发,提高开发效率和质量。11Spring IoC/DI概述vIoC(Inversion of Control,控制反转): IoC是Spring的核心概念,控制反转就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。 当某个JAVA实例(调用者)需
15、要另一个JAVA实例(被调用者)时,在传统的程序设计过程中,通常有由调用者来创建被调用者的实例,而控制反转则转移了控制权,既把调用者的创建转移到了外部容器(Spring容器)。12IOC和DI概念vDependency Injection(依赖注入) : IoC IoC也是一种设计模式,有也是一种设计模式,有Dependency InjectionDependency Injection(依赖注(依赖注入)和入)和Service LocatorService Locator(服务定位器)两种实现方式,(服务定位器)两种实现方式, SpringSpring框架采用依赖注入实现框架采用依赖注入实现
16、IoCIoC。 依赖注入是在运行期,由外部容器动态地将依赖对象注入依赖注入是在运行期,由外部容器动态地将依赖对象注入到组件中。即通过使用到组件中。即通过使用SpringSpring框架,开发人员将不必在自己框架,开发人员将不必在自己的代码中维护对象之间的依赖关系,只需在配置文件中进行的代码中维护对象之间的依赖关系,只需在配置文件中进行设定,设定, SpringSpring会自动依据配置信息来维护对象之间的依赖关会自动依据配置信息来维护对象之间的依赖关系。系。注:Spring框架结合简单的JavaBean实现了以前只有EJB才能完成的功能。13Spring IoC容器vSpring的IoC容器概
17、述 Spring的IoC容器实现了控制反转,即在开发过程中,开发人员不需要关心容器是怎样的,也不需要调用容器的任何API。容器会自动进行被管理对象的初始化及对象之间依赖关系的维护。 在Spring中,最重要的是两个包,提供了IoC容器的基本功能org.springframework.beans包org.springframework.context包14Spring IoC容器vIoc容器工作原理26org.springframework.beans.factory.BeanFactory 是Spring 容器(也叫SpringIoC 容器)的实际代表者,BeanFactory 是IoC 容器
18、的核心接口。它的职责包括:实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。这里的Bean是一种广泛意义上的JavaBean对象,包括了任何由Spring的IoC容器进行初始化、装配以及其他方面管理的Java对象。它既可是开发人员自己开发的应用对象,也可是Spring或其他组件所提供的Java对象。从上图可以看到,我们可以在Spring IoC 容器中配置应用程序中所需要的信息,如POJO 业务类,这些业务类(Bean)之间相互依赖。Spring 容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。整个IoC 容器就是一个大的工厂,为应用程 序 提供bean。Spring
19、 IoC容器 BeanFactory接口提供了多个实现类来供开发人员使用,最常使用的是org.springframework.beans.factory.xml.XmlBeanFactory类,是通过XML格式的文件来配置Bean对象以维护对象之间的关系。 使用XML格式的配置文件时,配置文件的最顶层是元素,其内部包含一个或多个元素,其中每一个元素定义了一个bean的实例化信息以及与其他bean之间的关系 在初始化容器时,需要一个用于访问配置文件的org.springframework.core.io.Resource对象作为构建容器对象的参数。Resource对象本身是一个接口,目的是为提供
20、一个使用不同方式访问资源文件的统一方法,支持的方式包括文件系统、二进制数组、二进制流、URL、类路径等 由于访问配置文件的方式不同,就决定可使用不同方式来初始化容器对象,直接通过文件系统访问配置文件的初始化代码如下: Resource rs=new FileSystemResource(“/hw/beans-config.xml”); BeanFactory factory=new XmlBeanFactory(rs); 实际中更多是通过类路径的方式来访问配置文件,将配置文件放在CLASSPATH所指定的目录中,初始化代码如下: Resource rs=new ClassPathResourc
21、e(“beans-config.xml”); BeanFactory factory=new XmlBeanFactory(rs);注:在实际的Web应用开发中,不需开发人员自己进行容器的初始化,生成BeanFactory对象,只需在web.xml文件中进行简单配置既可。16Spring IoC容器vBeanFactory接口包含的几个基本方法: Boolean containsBean(String name)判断Spring容器是否包含id为name的Bean实例 Class getType(String name)返回容器中指定Bean实例的类型 Object getBean(Strin
22、g name) 返回以给定名字注册的bean实例。根据bean的配置情况,如果为singleton模式将返回一个共享的实例,否则将返回一个新建的实例。如果没有找到指定的bean,该方法可能会抛出BeansException异常(实际上将抛出NoSuchBeanDefinitionException异常),在对bean进行实例化和预处理时也可能抛出异常 17Spring IoC容器vApplicationContext 接口: 大部分时候,我们都不会使用BeanFactory实例作为Spring容器,而是使用ApplicationContext实例作为容器,该容器被称为Spring上下文。App
23、licationContext是BeanFactory子接口,它增强了BeanFactory的功能。18ApplicationContext实现类实现类描述描述org.springframework.context.support.ClassPathXMLApplicationContext从类路径中的XML文件载入上下文定义信息org.springframework.context.support.FileSystemXmlApplicationContext从文件系统中的XML文件载入上下文定义信息表 ApplicationContext实现类实现类Spring IoC容器uApplica
24、tionContext 接口常用的实现类:接口常用的实现类: ClassPathXmlApplicationContext:从类路径中的XML文件载入上下文定义信息,把上下文定义文件当成类路径文件,例:ApplicationContext context=new ClassPathXmlApplicationContext(“beans-config.xml”); FileSystemXmlApplicationContext:从文件系统中的XML文件载入上下文信息,例:ApplicationContext context=new FileSystemXmlApplicationContext
25、(“d:/sp/beans-config.xml”);区别: FileSystemXmlApplicationContext只能在指定的路径寻找文件beans-config.xml; ClassPathXmlApplicationContext可在整个类路径中寻找。 XmlWebApplicationContext:从web系统中的XML文件载入载入上下文定义信息19Spring IoC容器vBeanFactory与ApplicationContext的区别 ApplicationContext与BeanFactory都是Spring容器,职责都有实例化、定位、配置应用程序中的对象及建立这些对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SSM 框架 应用 开发 案例 实战 全书 ppt 完整版 课件 电子 教案 教学 教程
