《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx

上传人:李司机 文档编号:6993066 上传时间:2024-04-01 格式:DOCX 页数:7 大小:43.37KB
返回 下载 相关 举报
《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx_第1页
第1页 / 共7页
《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx_第2页
第2页 / 共7页
《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx_第3页
第3页 / 共7页
《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx_第4页
第4页 / 共7页
《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx》由会员分享,可在线阅读,更多相关《《JavaEE企业级应用开发案例教程》教案第2课Spring基础.docx(7页珍藏版)》请在三一办公上搜索。

1、课题Spring基础课时2课时(90min)教学目标知识目标:(1)了解SPring的优点、体系结构、下载方法和目录结构(2)理解Spring的控制反转和依赖注入,了解SpringIoC容器的工作原理和常用接口能力目标:能创建Java项目实现Spring的简单应用素质目标:通过了解SPring的产生和发展,养成思考和分析问题的习惯,培养创新能力,具备勇于创新、虚心好学的品质教学重难点教学重点:SPring的优点,Spring的体系结构,Spring下载及目录结构,SpringIoC容器教学难点:SPringIoC容器教学方法问答法、讨论法、讲授法、演示法、任务驱动法教学用具电脑、投影仪、多媒体

2、课件、教材教学过程主要教学内容及步骤课前任务【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过APP或其他学习软件,完成课前任务请同学们查找Spring官方网站,以及Spring的下载地址,在自己个人电脑上进行下载。【学生】完成课前任务考勤【教师】使用APP进行签到【学生】班干部报请假人员及原因问题导入【教师】提出以下问题:上次课我们介绍SSM框架时,简单介绍了Spring,那么Spring有哪些优点?【鞋】思考、传授新知【教师】讲解SPring概念、特点、体系结构,Spring的下载及目录结构,SpringI。C容器一、SPring概述【教师】讲解Spring的优点,以及Sprin

3、g的体系结构(一)Spring的优点Spring是目前JavaEE应用最广的框架之一,它的成功源于编程理念,而非技术本身。Spring的核心理念是控制反转(inverseofConIroI,IoC)和面向切面编程(aspectorientedprogramming,AOP),它是一种基于类的对象(即Bean)的编程,通过IoC容器管理Bean来实现Java应用的开发。Spring已经发展至Spring5版本,主要具有以下优点。(1)非侵入式设计。(2)方便解耦、简化开发。(3)支持AOPo(4)支持声明式事务管理。(5)方便程序测试。(6)支持各种优秀框架集成。(7)降低APl的使用难度。(详

4、见教材)()Spring的体系结构SPring采用分层架构,根据不同的功能划分为多个模块。【教师】展示Spring5的体系结构图(详见教材),并讲解Spring的每个模块都可以单独实现,也可以与其他模块联合实现,在开发过程中可以根据需求有选择地使用模块。1.DataAccessZIniegration(数据访问,集成)DataAccessZIntegration用于访问和操作数据库中的数据,主要包括JDBC、ORMxXOMxJMS和Transactions模块。(1)JDBC模块:提供了一个JDBC抽象层,支持数据库的资源管理和错误处理,大大简化了对数据库操作的编程。(2)ORM模块:支持流行

5、的对象关系映射API的集成,包括JPAxJDO和Hibemate等.(3)X0M模块:支持对象/XML映射的抽象层实现,如JAXB、Castor.XMLBeanssJiBX和XStream等。(4)JMS模块:提供了Java生产和消费消息功能,从Spring4.1开始,支持Messaging模块的集成。(5)Transactions模块:提供了事务管理功能,支持Spring自动处理声明式事务。2.Web(网络)Web主要提供了Web应用的各种工具类,包括WebSocket.WebMVCxWeb和WebFlux模块。(1)WebSocket模块:提供了Socket通信和Web端推送功能.(2)W

6、ebMVC模块:实现了SpringMVC的Web应用。(3)Web模块:为Spring提供了最基础的Wcb支持,通过Servlet监听器来初始化IoC容器和Web应用上下文。(4)WebFlux模块:Spring5.0版本以后新增的模块,用于建立异步的非阻塞事件驱动服务,并具有良好的扩展性。3 .CoreContainer(核心容器)CoreContainer是其他模块的基础,主要包括BeansxCorexContext和Expression模块。(1)Beans模块:提供了BeanFactory接口,实现了SpringIoC容器。(2)COre模块:SPring的核心模块,提供了框架的基本组

7、成部分,包括控制反转和依赖注入功能。(3)Context模块:Spring的上下文模块,建立在Beans和Core模块之上,它继承了Beans模块,并扩展了BeanFaCtory接口的功能,其中APPliCatiOnConteXt接口是ConteXt模块的核心接口。(4)Expression模块:提供了强大的表达式语言,用于在运行时查询和操作对象图。4 .其他模块Spring的其他模块包括AOP、AspectsxInstrumentationMessaging和Test模块。(1)AOP模块:支持面向切面编程,允许定义方法拦截器和接入点,将代码按照功能进行分离,以降彳氐耦合性。(2)Aspec

8、ts模块:支持与AspectJ的集成,AspectJ是一个功能强大且成熟的AOP框架,为AOP提供了多种实现方法。(3)Instrumentation模块:西三特定的应用服务器中使用代理类,实现AOP功能,它是AOP的一个支援模块。(4)Messaging模块:支持消息传递体系结构和协议。(5)Test模块:支持程序单元测试和集成测试。【课堂问答】【教师】随机遨请学生回答以下问题请同学们总结归纳,根据自己理解,用自己的语言描述Spring的体系结构。【学生】聆听、思考、回答【教师】总结学生的回答二、SPring下基及目录结构【教师】介绍Spring的下载地址,讲解Spring的目录结构Spri

9、ng是一个独立的框架,在使用前需要下载它的JAR包,可以看到Spring各版本压缩包的下载链接。由于Spring的最新稳定版本为5.3.22,所以单击“5322”链接,然后在下载页面单击Mspring-5.3.22-dist.zipM链接进行下载。解压下载后的压缩包文件,将生成spring-framework-5.3.22文件夹,其目录结构如图2-3所示(详见教材).Spring文件夹中包含3个子文件夹,其具体介绍如下.(1)docs文件夹:存放Spring的相关文档,包括开发指南、API参考文档等。(2)Iibs文件夹:存放Spring开发所需的JAR包和源代码。Spring5.3.22由2

10、2个模块组成,每个模块提3个压缩包,分别为以5.2.33.jar结尾的Spring的class文件压缩包、以5.3.22-javadoc.jar结尾的Spring文档压缩包、以5.3.22-SOUrCes.jar结尾的Spring源文件压缩包。(3)schema文件夹:存放Spring各种配置文件的XMLSchema文档。此外,使用Spring开发时f其核心容器还依赖CommonsJogging的JAR包,可通过单击“commons-logging-1.2-bin.ziph链接进行下载,解压下载后的压缩包文件即可找到commons-logging-1.2.jar【课堂问答】【教师】随机邀请学生

11、回答以下问题请同学们根据之前Java的知识,思考如何在Eclipse中导入上述的commons-logging-1.2.jarJAR包?【学生】聆听、思考、回答【教师】总结学生的回答三、SpringIoC容器*【教师】讲解SpringIoC容器基本概念,SpringIoC容器的常用接口()SpringIoC容器概述【教师】多媒体观看视频SpringIoC容器概述”(详见教材),让学生了解IoC与DI的概念、SpringIoC工作原理、实例化的类比举例在传统的面向对象编程中,获取对象的方式是应用程序使用关键字new主动创建一个对象,然后通过对象调用其属性或方法.使用Spring后,对象不再由应用

12、程序创建,而是由Spring的IoC容器来创建并建立它们之间的依赖关系,然后应用程序从IoC容器获取对象。这样,控制权由应用程序转移到了IoC容器,发生了反转,这就是Spring的IoCeIoC只是面向对象编程的一个设计原则,依赖注入(dependencyinjection,DI)则是IoC核心功能的一种实现方式,而IoC容器就是具有依赖注入功能的容器,它在运行期间动态地将某种依赖资源注入对象中,如将参数值或对象B注入(赋值给)对象A的属性。【课堂问答】*【教师】随机邀请学生回答以下问题请同学们总结归纳,IoC和DI有什么区别?【学生】聆听、思考、回答【教师】总结学生的回答SpringIoC容

13、器是Bean的创建者和管理者,它的工作原理如图2-5所示(详见教材)(1)在应用程序中定义Bean的实现类,如BeanUBean2等,然后通过XML文件、注瞬口Java类等方式配置Bean的信息。(2)启动Spring时,SpringIoC容器加载配置文件,读取Bean的配置信息,然后在容器中建立Bean定义注册表。(3)SpringIoC容器根据注册表通过Bean的实现类实例化Bean,并建立Bean之间的依赖关系。(4)SpringIoC容器将Bean放入Bean缓存池中备用。(5)应用程序中的调用者从SpringIoC容器中获取Bean实现程序功能。【课堂问答】【教师】随机邀请学生回答以

14、下问题请同学们总结归纳,根据自己理解,简述SpringIoC容器的工作原理。【学生】聆听、思考、回答【教师】总结学生的回答(二)SpringIoC容器的常用接口【教师】多媒体观看视频Springl。C容器的常用接口“(详见教材),让学生了解SPringIoC容器的各个接口,及接口的使用方法SpringIoC容器的实现主要基于BeanFactory接口和ApplicationContext接口。1 .BeanFactory接口BeanFactory接口是SpringIoC容器最基本的接口,采用了Java经典的工厂模式。BeanFactory接口提供了创建和管理Bean的方法,其中最常用的是g6B

15、ean()方法,用于获取Bean,其常用的语法格式如下。/通过Bean的唯一标识或名称获取BeangetBean(Stringname)/通过Bean的唯一标识或名称,以及实现类类型获取BeangetBean(Stringname,Classtype)例如,Bean的实现类为User,唯一标识为user,想要获取该Bean,可以通过下面两种方法实现。Useruserl=(User)context.getBean(,user);Useruser2=context.getBean(user,User.class);Spring提供了BeanFaCIOry接口的实现类,其中最常用的是XmIBeanF

16、actory类,它可以读取XML配置文件,并根据其中的配置信息生成BeanFaCtory接口的实例,其语法格式如下。BeanFactorybeanFactory=newXmlBeanFactory(newFileSystemResource(StringConfigLocation)其中,COnfigLOCaliOn表示XML配置文件的路径和名称,如DJapplicationConiexl.xml.2 .ApplicationConiext接口ApplicationContext接口继承自BeanFactory接口,它对BeanFactory接口的功能做了许多扩展,添加了国际化、资源访问、事件

17、传播等功能。Spring提供了以下两个常用的ApplicationContext接口的实现类.(1)ClassPathXmiApplicationContext类:从类路径(即相对路径)加载XML配置文件,并实例化APPliCalionCOnleXt接口,其语法格式如下。ApplicationContextcontext=newClassPathXmiApplicationContext(StringConfigLocation)(2)FileSystemXmlApplicationContext类:从指定的文件系统路径(即绝对路径)加载XML配置文件,并实例化ApplicaiionConte

18、xt接口,其语法格式如下。AppIicationContextcontext=newFileSystemXmlApplicationContext(StringConfigLocation)通过FileSystemXmlApplicationContext类实例化接口时,使用的是配置文件的绝对路径,这样会导致程序的灵活性降低,一般不推荐使用。在JaVa项目中,一般通过ClaSSPahXmlApplicaiionConiexi类来实例化AppIicationContext接口。但是,在Web项目中,通常由Web服务器来完成AppIicationContext接口的实例化,此时需要通过web.xm

19、l文件配置Spring的监听器(ContextLoaderListener)来实现。四、综合案例SPring入门程序【教师】讲解案例内容、案例的分析、案例的具体实施(一)案例内容在传统的面向对象编程中,获取对象的方式是应用程序使用关键字new主动创建一个对象,然后通过对象调用其属性或方法。使用Spring后,对象不再由应用程序创建,而是由Spring的IoC容器来创建并建立它们之间的依赖关系,然后应用程序从I。C容器获取对象。这样,控制权由应用程序转移到了IoC容器,发生了反转,这就是Spring的IoCe提示Spring篇的案例只用到了Spring,没有使用SpringMVC等其他技术。为简

20、化构建项目步骤,Spring篇的案例都是基于Java项目设计的.(二)案例分析(1)在Eclipse中,创建一个Java项目spring,并在项目下创建com.spring.student.welcome包和resources源文件夹.其中,com.spring.student.welcome包存放Java文件,resources源文件夹存放XML配置文件。(2)在Com.spring.student.welcome包中创建Bean的实现类,实现根据姓名输出欢迎语。(3)在resources源文件夹中创建配置文件,然后在文件中定义Bean,并为Bean的姓名属性注入值.(4)在com.spri

21、ng.student.welcome包中创建执行类,并在类中加载配置文件,然后通过getBean()方法获取Bean,最后通过Bean调用方法输出欢迎语。(三)案例实施)【教师】讲解步骤和方法,并进行操作演示步骤1启动ECIiPSe,在工作窗口的菜单栏中选择文件一新建一项目”菜单项。步骤2打开新建项目窗口,选择Java项目选项,然后单击下一步按钮。步骤3打开新建Java项目“窗口,在项目名”文本框中输入项目名,如飞PrilIg,其他保持默认设置,勾选MUsedefaultJREjdk-17.0.4.andworkspacecompilerpreferences单选钮,然后单击完成按钮.步骤4在

22、spring项目下创建Iib文件夹,将Spring的4个基本包(spring-core-5.3.22.jarxspring-beans-5.3.22.jarxspring-context-5.3.22.jar和spring-expression-5.3.22.jar)和一个依赖包(commons-logging-1.2.jar)复制到该Hb文件夹中。提示Spring的4个基本包可在Spring的JAR包spring-framework-5.3.22下的Iibs文件夹中查找。步骤5在Eclipse工作窗口中,选中spring项目Iib文件夹中的所有JAR包并右击,在弹出的快捷菜单中选择构建路径T

23、添加至构建路径菜单项。步骤6在SPring项目下创建com.spring.student.welcome包,并在包中创建Bean的实现类Welcome.在类中,定义姓名(name)属性,然后定义SetNameo方法设置属性信息,以及ShOWo方法输出欢迎语.实现代码如下。packagecom.spring.student.welcome;publicclassWelcomeprivateStringname;定义属性publicvoidsetName(Stringname)定义设置属性信息方法this.name=name;Ipublicvoidshow()定义输出欢迎语方法System.out

24、.println(name+,欢迎使用学生管理系统!);I)步骤7在spring项目下创建resources源文件夹,并在源文件夹中创建配置文件WeICOme.xml.在文件中使用元素定义Bean,并为Bean的name属性注入值。实现代码如下。号提示在spring项目下创建包或源文件夹时,右击氏IiPSe工作窗口中的spring项目,在弹出的快捷菜单中选择新建一包/源文件夹菜单项即可。在resources源文件夹中创建XML文件时,右击resources源文件夹,在弹出的快捷菜单中选择新建一其他”菜单项,打开“选择向导对话框,然后选择XML选项,在展开的列表中选择XMLFile即可。.(详见

25、教材)步骤8在com.spring.student.welcome包中创建执行类WelcomeTest,通过QaSSPaIhXmIAPPliCaIionConteXl类加载welcome.xml配置文件初始化Spring容器,然后通过容器的getBean()方法获取Bean实例welcome,接着通过welcome调用ShOWo方法,最后关闭容器。实现代码如下。packagecom.spring.student.welcome;importorg.springframework.context.ApplicationContext;importorg.springframework.conte

26、xt.support.AbstractApplicationContext;importorg.springframework.context.support.ClassPathXmlApplicationContext;publicclassWelcomeTestpublicstaticvoidmain(Stringargs)加载welcome.xml配置文件ApplicationContextcontext;context=newClassPathXmlApplicalionContext(,welcome.xml);/通过容器获取Bean实例welcomeWelcomewelcome=(

27、WelCome)ConIeXLgelBean(welcome);welcome.show();关闭容器(AbstractApplicationContext)context).close();I)步骤9执行WelcomeTest类,程序运行结果如图2-10所示(详见教材)【学生】聆听、思考、理解、记录课堂实训I【教师】介绍课堂实训要求,以及实训内容,要求学生按照实训要求完成实训任务参考综合案例,使用ECliPse创建一个JaVa项目practice2,然后在项目中执行以下操作.(1)在项目下仓J建COm.practice2.exercise包和resources源文件夹.(2)在项目下创建Ii

28、b文件夹,并将Spring的4个基本包和一个依赖包添加到文件夹中,然后将其添加至构建路径。(3)在com.practice2.exercise包中创建User类,并在类中定义姓名(name)和用户id(id)属性,以及SetName()、SelIdO和ShoWo方法.其中,SetXXXo方法实现为属性赋值;ShOW()方法实现输出用户信息。(4)在resources源文件夹中创建user.xml配置文件,并在文件中定义两个Bean,分别为userl和user2,然后将用户信息注入Beane(5)在com.practice2.exercise包中创建UserTest类,并在类中加载user.xm

29、l配置文件,然后通过getBean()方法获取Bean实例USerl和user2,接着通过Bean分别调用ShOWo方法【学生】按照要求进行操作,完成后总结自己哪些地方做得很好,还有哪些地方需要改进课堂小结【教师】简要总结本节课的要点本次课介绍了Spring的优点、Spring分层的体系结构(DataAccessZIntegration(数据访问麋成)、Web(网络)、CoreContainer(核心容器)、其他模块)。演示了Spring的下载,下载解压后的各个目录结构。讲解了SpringIoC容器的基本概念、工作原理,SpringIoC容器的常用接口,包括BeanFactory接口、APPliCaIionCOnIeXl接口。最后通过综合案例SPring入门程序,创建了一个简单的JaVa项目,实现控制台输出相应内容。【学生】总结回顾知识点作业布置【教师】布置课后作业请根据本课内容,完成课后习题中的相关习题。【学生】完成课后任务教学反思

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号