栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring

一、框架概述

1. Spring 是轻量级的开源的 JavaEE 框架

2. Spring 可以解决企业应用开发的复杂性

3. Spring 有两个核心部分:IOC 和 Aop

  •         IOC:控制反转,把创建对象过程交给 Spring 进行管理
  •         Aop:面向切面,不修改源代码进行功能增强

4. Spring 特点

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

5. 入门案例

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


import com.atguigu.spring.User;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestSpring5 {
    @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 2.1 什么是IOC
  1. 控制反转,把对象创建和对象之间的调用过程,交给 Spring 进行管理
  2. 使用 IOC 目的:为了耦合度降低
2.2 IOC 底层原理 :xml 解析、工厂模式、反射 2.3 底层图解

 

2.4 IOC(BeanFactory 接口)

1. IOC 思想基于 IOC 容器完成,IOC 容器底层就是对象工厂。

2 .Spring 提供 IOC 容器实现两种方式:(两个接口)

        (1)BeanFactory:IOC 容器基本实现,是 Spring 内部的使用接口,不提供开发人员进行使用      * 加载配置文件时候不会创建对象,在获取对象(使用)才去创建对象 (中加上lazy-init="true")。           

        (2)ApplicationContext:BeanFactory 接口的子接口,提供更多更强大的功能,一般由开发人 员进行使用      * 加载配置文件时候就会把在配置文件对象进行创建。

3. ApplicationContext 接口实现类

2.5 IOC 操作 Bean 管理 2.5.1 什么是 Bean 管理

Bean 管理指的是两个操作 :

  • Spring 创建对象
  • Spirng 注入属性

Bean 管理操作有两种方式 :

  1. 基于 xml 配置文件方式实现
  2. 基于注解方式实现
 2.5.2  IOC 操作 Bean 管理(基于 xml 方式)

1. 基于 xml 方式创建对象

    
    
  1.         在 spring 配置文件中,使用 bean 标签,标签里面添加对应属性,就可以实现对象创建
  2.         在 bean 标签有很多属性,常用的属性:               * id 属性:唯一标识                                * class 属性:类全路径(包类路径)
  3.         创建对象时候,默认也是执行无参数构造方法完成对象创建

2. 基于 xml 方式注入属性    

        DI:依赖注入,就是注入属性(Dependency Injection是IOC中一种具体实现,表示依赖注入)

3. 第一种注入方式:使用 set 方法进行注入 

        (1)创建类,定义属性和对应的 set 方法

public class Book {
    //创建属性
    private String bname;
    private String bauthor;
    private String address;
    //创建属性对应的set方法
    public void setBname(String bname) {
        this.bname = bname;
    }
    public void setBauthor(String bauthor) {
        this.bauthor = bauthor;
    }

    public void setAddress(String address) {
        this.address = address;
    }
}

        (2)在 spring 配置文件配置对象创建,配置属性注入


    
    
    
    

4. 第二种注入方式:使用有参数构造进行注入

        (1)创建类,定义属性,创建属性对应有参数构造方法

public class Orders {
    //属性
    private String oname;
    private String address;
    //有参数构造
    public Orders(String oname,String address) {
        this.oname = oname;
        this.address = address;
    }
}

        (2)在 spring 配置文件中进行配置

    
    
        
        
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/684959.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号