电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Java EE 课程ppt课件 第13章 Spring基础

79页
  • 卖家[上传人]:杨****
  • 文档编号:54211859
  • 上传时间:2018-09-09
  • 文档格式:PPT
  • 文档大小:1.78MB
  • / 79 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第13章 Spring基础,13.1 Spring开发入门,13.2 Spring的核心机制依赖注入,13.3 Spring容器中的Bean,13.4 Spring对集合属性的注入,13.5 Spring后处理器,13.1 Spring开发入门,13.1.1 Spring概述 其主要优势之一是采用分层架构,整个框架由7个定义良好的模块(组件)构成,它们都统一构建于核心容器之上,如图13.1所示,分层架构允许用户选择使用任意一个模块。,13.1.1 Spring概述, Spring Core:核心容器提供Spring框架的基本功能,其主要组件BeanFactory是工厂模式的实现。 Spring Context:向Spring 框架提供上下文信息,包括企业服务,如 JNDI、EJB、电子邮件、国际化、校验和调度等。 Spring AOP:直接将AOP(面向方面编程)功能集成到Spring框架中,通过配置管理特性,可以很容易地使Spring框架管理的任何对象支持AOP。 Spring DAO:JDBC DAO抽象层提供了有用的异常层次结构,用来管理异常处理和不同数据库供应商抛出的错误消息。

      2、 Spring ORM:Spring框架插入了若干ORM框架,提供ORM的对象关系工具,其中包括JDO、Hibernate和iBatis SQL Map,并且都遵从Spring的通用事务和DAO异常层次结构。 Spring Web:为基于Web的应用程序提供上下文。 Spring Web MVC:一个全功能构建Web应用程序的MVC实现,通过策略接口实现高度可配置,容纳了大量视图技术,包括JSP、Velocity、Tiles、iText和POI。,13.1.2 Spring简单应用,建立Java项目,命名为SpringDemo。在项目src下创建org.model包,其中建立一个模型类HelloWorld.java,代码如下: package org.model; public class HelloWorld private String message; public String getMessage() return message; public void setMessage(String message) this.message = message; ,13.1.2 S

      3、pring简单应用,然后在src下创建org.test包,其中创建测试类Test,编写测试代码如下: package org.test; import org.model.HelloWorld; public class Test public static void main(String args) HelloWorld helloWorld=new HelloWorld(); helloWorld.setMessage(“Hello World!“); / 设置message值 System.out.println(helloWorld.getMessage(); 运行该测试类,在控制台就可以输出“Hello World!”了,如图13.2所示。 但是,如果现在要改变输出内容(如输出“Hello Yabber!”),就必须修改程序代码,把设置message值的语句改为: helloWorld.setMessage(“Hello Yabber!“);,13.1.2 Spring简单应用,【实例13.1】在以上这个HelloWorld程序的基础上,用Spring实现程序输出内容的灵活

      4、改变,演示Spring框架的基本使用。 1为项目添加Spring开发能力 右击项目名,选择“MyEclipse”“Project Facets Capabilities”“Install Spring Facet”菜单项,在弹出对话框中单击“Yes”按钮,将出现如图13.3所示的对话框。,13.1.2 Spring简单应用,选择结束后,单击“Next”按钮,出现如图13.4所示的界面,用于创建Spring的配置文件,配置文件默认存放在项目src文件夹下,名为applicationContext.xml。,13.1.2 Spring简单应用,单击“Next”按钮,出现如图13.5所示的界面,选择Spring的核心类库,单击“Finish”按钮完成。,13.1.2 Spring简单应用,2修改配置文件applicationContext.xml 以上操作完成后,项目的src文件夹下会出现名为applicationContext.xml的文件,如图13.6所示,这就是Spring的核心配置文件。,13.1.2 Spring简单应用,打开配置文件,对其进行修改,如下: Hello World!

      5、 ,13.1.2 Spring简单应用,3修改测试类 配置完成后,修改测试用Test类,代码如下: package org.test; import org.model.HelloWorld; import org.springframework.context.ApplicationContext; /导入Spring框架的应用上下文 import org.springframework.context.support.FileSystemXmlApplicationContext; public class Test public static void main(String args) / 获取ApplicationContext对象 ApplicationContext ac = new FileSystemXmlApplicationContext(“src/ applicationContext.xml“); / 通过ApplicationContact获得HelloWorld对象 / getBean方法中的参数即为配置文件中Bean的id值 HelloWorld hel

      6、loWorld = (HelloWorld)ac.getBean(“HelloWorld“); System.out.println(helloWorld.getMessage(); / 输出 ,13.1.2 Spring简单应用,运行测试类,结果与Test.java的运行结果相同。程序若要输出“Hello Yabber!”,则只需修改配置文件中的“value”值即可,即: Hello Yabber! 修改配置后,程序输出结果如图13.7所示。,13.2 Spring的核心机制依赖注入,13.2.1 依赖注入的概念 【实例13.2】简单的依赖注入程序。 新建一个Java项目,名称为Spring_DI,为其添加Spring开发能力,步骤见【实例13.1】第1步。 (1)定义接口。 创建包“org.interfaces”,在该包中新建Person接口,代码如下: package org.interfaces; /* 定义Person接口*/ public interface Person /接口中定义一个吃食物方法 public void eatFood(); 继续在该包中定义Food接口

      7、,代码如下: package org.interfaces; /*定义Food接口*/ public interface Food /在接口中定义一个吃的方法,返回吃的东西 public String eat(); ,13.2.1 依赖注入的概念,(2)接口实现类。 创建包“org.interfaces.impl”,在该包中定义Person的实现类Man,代码如下: package org.interfaces.impl; import org.interfaces.Food; import org.interfaces.Person; /* Person接口的具体实现类*/ public class Man implements Person /定义Food接口私有属性,面向Food接口编程,而不是具体的实现类 private Food food; /构建 setter方法,必须有,后面会讲解为什么 public void setFood(Food food) this.food = food; /实现Person接口eatFood方法 public void eatFood() S

      8、ystem.out.println(food.eat(); ,13.2.1 依赖注入的概念,定义Food的一个实现类Apple,代码如下: package org.interfaces.impl; import org.interfaces.Food; public class Apple implements Food public String eat() return “正在吃苹果.“; ,13.2.1 依赖注入的概念,(3)修改配置文件。 修改src下Spring的配置文件applicationContext.xml,将Person实例和Food实例组织在一起,配置的内容。,13.2.1 依赖注入的概念,(4)编写测试类。 下面就可以编写测试类了,代码如下: package org.test; import org.interfaces.Person; import org.springframework.context.ApplicationContext; import org.springframework.context.support.FileSystemXmlApp

      9、licationContext; public class Test public static void main(String args) /创建ApplicationContext对象,参数为配置文件放置的位置 ApplicationContext context = new FileSystemXmlApplicationContext(“src/applicationContext.xml“); /通过Person bean的id来获取bean实例,面向接口编程,因此此处强制类型转换为接口类型 Person p = (Person)context.getBean(“man“); /直接执行Person的eatFood()方法 p.eatFood(); 运行主程序,输出结果为: 正在吃苹果.,13.2.1 依赖注入的概念,(5)程序分析。 在主程序中,调用了Person的eatFood()方法,该方法的方法体内需要使用Food的实例,按照通常的方式,在Person实例的eatFood()方法中,应该这样实现: /创建Food实例 food = new Apple (); /获得Food实例的eat方法返回值 System.out.println(food.eat();,13.2.1 依赖注入的概念,如果需要改写Food的实现类,或者提供另一个实现类(另一种食物)给Person实例使用,Person接口和Man实现类都无须改变,只需提供另一个Food的实现,然后对配置文件进行简单修改即可。例如,我们现在新建另一个Food的实现类Orange,代码如下: package org.interfaces.impl; import org.interfaces.Food; /*定义Orange类,实现Food接口*/ public class Orange implements Food /*实现接口吃的方法*/ public String eat() return “正在吃橘子.“; 修改配置文件applicationContext.xml,增加orange的Bean,代码如下: ,

      《Java EE 课程ppt课件 第13章 Spring基础》由会员杨****分享,可在线阅读,更多相关《Java EE 课程ppt课件 第13章 Spring基础》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.