Spring概述(底层原理)

目录

一、Spring概述

二、第一个Spring项目

1.创建User.java类

2.创建Spring配置文件

3.进行测试

三、IOC(概念和原理)


一、Spring概述

1.Spring是轻量级的开源的Java框架
2.Spring可以解决企业应用开发的复杂性。
3.Spring有两个核心部分:IOC和 Aop
    (1) IOC:控制反转,把创建对象过程交给Spring进行管理。
    (2) Aop:面向切面,不修改源代码进行功能增强
4.Spring特点

1.方便解耦,简化开发
2.Aop编程支持
3.方便程序测试
4.方便和其他框架进行整合
5.方便进行事务操作
6.降低 API开发难度

5.Spring5模块图
Spring 总共大约有 20 个模块, 由 1300 多个不同的文件构成。 而这些组件被分别整合在核心容器(Core Container) 、 AOP(Aspect Oriented Programming)和设备支持(Instrmentation) 、数据访问与集成(Data Access/Integeration) 、 Web、 消息(Messaging) 、 Test等 6 个模块中。 以下是 Spring 5 的模块结构图:

模块名称简介
spring-core依赖注入IOC与Dl的最基本实现。
spring-beansBean工厂与Bean的装配。
spring-context定义基础的Spring的Context上下文即IOC容器。
spring-expressionSpring表达式语言。

二、第一个Spring项目

1.创建User.java类

public class User {
    public void add(){
        System.out.println("add.......");
    }
}

2.创建Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--配置User对象-->
    <bean id="user" class="com.atguigu.spring5.User"></bean>
</beans>

3.进行测试

@Test
    public void testAdd(){
        //1 加载spring配置文件
        ApplicationContext context =
                new ClassPathXmlApplicationContext("bean1.xml");
        //2 获取配置创建的对象
        User user = context.getBean("user", User.class);

        System.out.println(user);
        user.add();
    }

三、IOC(概念和原理)

1.什么是IOC
        (1)控制反转,把对象创建和对象之间的调用过程,交给Spring进行管理
        (2)使用IOC目的:为了耦合度降低
        (3)做入门案例就是IOC实现
2.IOC底层原理
        (1)xml解析、工厂模式、反射
3.画图讲解IOC底层原理

 4.IOC过程(进一步降低耦合度)
        第一步 XML配置文件,配置创建的对象

<bean id="user" class="com.atguigu.spring5.User"></bean>

        第二步 有service类和dao类,创建工厂类

class UserFactory {
    public static UserDao getDao(){
        String classValue = class属性值;    //1 xml解析
        Class clazz = Class.forName(classValue);   //2 通过反射创建对象
        return (UserDao)clazz.newInstance();
    }
}

5.IOC(接口)
        1.IOC 思想基于 IOC 容器完成,IOC 容器底层就是对象工厂
        2.Spring提供的IOC容器实现的两种方式(两个接口):
                (1)BeanFactory接口:IOC容器基本实现是Spring内部接口的使用接口,不提供给开发人员进行使用(加载配置文件时候不会创建对象,在获取对象时才会创建对象。)
                (2)ApplicationContext接口:BeanFactory接口的子接口,提供更多更强大的功能,提供给开发人员使用(加载配置文件时候就会把在配置文件对象进行创建)推荐使用!
        3.ApplicationContext通常的实现

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值