对Spring的细细理解(一)

Spring5框架

  1. Spring5框架的概念
    Spring是轻量级的开源的 JavaEE框架
    Spring可以解决企业应用开发的复杂性
    Spring有两个核心部分:IOC和 Aop
    (1)IOC:控制反转,把创建对象过程交给 Spring进行管理
    (2)Aop:面向切面,不修改源代码进行功能增强
    Spring特点
    (1)方便解耦,简化开发
    (2)Aop编程支持
    (3)方便程序测试
    (4)方便和其他框架进行整合
    (5)方便进行事务操作
    (6)降低 API开发难度
    Spring框架下载地址:
    https://repo.spring.io/release/org/springframework/spring/
  2. 创建spring 案例
    (1)new project
    在这里插入图片描述
    (2)点next 后
    在这里插入图片描述
    (3)选择 Java Hello World 后 点击next
    写上项目名后,开始打开
    在这里插入图片描述

(4)导入相关包,我没下载,我直接在maven理找
与spring 底层最直接的 core container:
Bean、Core、Context、Expression
因此涉及了这几个包,都是springframework类,因此都会在这里边
在这里插入图片描述
(5)导包
在这里插入图片描述
在这里插入图片描述
加入进去后

(6)创建普通类,和普通方法

public class User {
    public void add(){
        System.out.println("这是add方法");
    }
}

创建一个xml文件
该XML中主要是为了配置创建的对象

<?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="spring5_demo01.bean.User"></bean>
</beans>

这里的id 是唯一标识符,标识后面 name,name的值对应为我们创建的对象和方法

最后,用一个测试类去测试

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestAdd {
    @Test
    public void add(){
        //加载spring配置文件
        ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");
        //通过反射获取到User文件
        User user = context.getBean("user",User.class);
        //将该类对象打印出来
        System.out.println(user);
        //打印出该方法
        user.add();
    }
}

测试结果
在这里插入图片描述
成功!
3. IOC(概念和原理)
(1) 什么是IOC?
<1>控制反转,把对象创建和对象之间的调用过程,交给 Spring进行管理
<2>使用 IOC目的:降低耦合度
<3>做入门案例就是 IOC实现,利用xml 配置,以前都是new 实例化一个对象,现在通过spring xml 文件配置,相当于就是交给了spring 框架了,它来为我们处理对象的调用的事项,不用再去new 实例化了
(2)IOC的底层实现原理
xml解析、工厂模式、反射
第一步: 通过上面的例子,我们可以看到,现在xml文件中配置好对象

<bean id="user" class="spring5_demo01.bean.User"></bean>

这里我的理解是把对象托付给了spring框架
spring通过这个xml配置文件找到对应的类
第二步: 创建service 和dao层,创建工厂类

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值