| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Spring,搭建Spring环境 -> 正文阅读 |
|
[Java知识库]Spring,搭建Spring环境 |
控制反转:控制了对象的创建,反转:反转的是获取对象的方式,从自己创建对象变为由Spring工厂推送 1. 搭建Spring环境,导入依赖
还要导入:
?2. application-Context.xml配置文件先导入模板
3. 详解Spring原理新建Student类
写个测试类test.java 来看以前的做法:先新建对象,在通过set()属性赋值 再来用IOC方法 ? ? ? ? ? ? ? ? 1. 在application-context.xml文件中写bean,通过property标签设置属性 ???????????????? ? ? ? ? ? ? ? ? 2. 回到test测试类 现在怎么创建student对象? ? ? ? ? ? ? ? ? 第一步:获取Spring上下文对象context ? ? ? ? ? ? ? ? 第二步:通过?context.getBean()获取刚刚在Spring配置文件application-context.xml文件中的bean(id="Student") ? ? ? ? ? 对象的创建和对象的赋值全部交给IOC容器? ?下面的代码,执行从springIOC容器中获取一个id为student的bean对象,该对象的类型为对应bean标签class的值
理解工厂的概念: 创建一个ICourse接口:课程
不同课程例如JavaCourse、MybatisCourse实现这个接口
学生可以学习课程:为Student类添加方法 learnJava()、learnMybatis()
测试一下: ?上面是我们原始的开发方式 每次需要课程都要在Student类里面写一个learnXxx(), 如果要学习20个课程,就要20个方法,且每个方法里面都要创建一个课程的实现类对象 ?这种方式创建对象new非常零散,造成后期维护较为麻烦 创建工厂,由工厂统一的创建对象 ?根据名称创建课程对象
把Student中的learnJava()、learnMybatis()方法统一写在learn方法中,并给形参String name,并把name交给工厂CourseFactory来创建对象? ?测试: ?现在要学习不同课程只需要改参数值就可以了,通过简单的工厂,可以将创建课程new 集中起来操作,方便后期维护 所以SpringIOC容器就是一个工厂,不需要我们去写CourseFactory,由SpringIOC容器为我们创建 我们只需要通过调用 为了更方便理解控制反转,我们也可以把这种方式叫做依赖注入 在spring配置文件中把Course的两个实现类设置bean ?如下代码:在需要创建JavaCourse对象的地方通过spring上下文context调用getBean()方法拿对象,不需要自己创建
对比之前自己new对象
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/30 13:23:49- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |