SSM基础—SpringIOC容器

系列文章目录

SSM中SpringIOC容器的学习


文章目录

  • 系列文章目录
  • 前言
  • 一、核心概念(IOC/DI、IOC容器、Bean)
  • 二、IOC入门案例
    • 1.思路分析
    • 2.具体实现
      • 1.导入spring的坐标spring-context
      • 2.配置bean
      • 3.初始化容器并获取bean
  • 三、DI入门案例
    • 1.思路分析
    • 2.具体实现
      • 1.删除使用new的形式创建对象的代码
      • 2.提供依赖对象对应的set方法
      • 3.配置service与dao之间的关系
  • 总结


前言

SSM基础—SpringIOC容器_第1张图片

SSM基础—SpringIOC容器_第2张图片


一、核心概念(IOC/DI、IOC容器、Bean)

SSM基础—SpringIOC容器_第3张图片

SSM基础—SpringIOC容器_第4张图片

SSM基础—SpringIOC容器_第5张图片

二、IOC入门案例

1.思路分析

SSM基础—SpringIOC容器_第6张图片

2.具体实现

1.导入spring的坐标spring-context


<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0modelVersion>

    <groupId>org.examplegroupId>
    <artifactId>spring-01-quickstartartifactId>
    <version>1.0-SNAPSHOTversion>

    <dependencies>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-contextartifactId>
            <version>5.3.21version>
        dependency>
    dependencies>

project>

2.配置bean


<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">

    
    
    
    <bean id="bookDao" class="org.example.dao.impl.BookDaoImpl"/>

    <bean id="bookService" class="org.example.service.impl.BookServiceImpl" />
beans>

3.初始化容器并获取bean

package org.example;

import org.example.dao.BookDao;
import org.example.service.BookService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class App {
    public static void main(String[] args) {
        //3.获取IOC容器
        ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");
        //4.获取bean
//        BookDao bookDao = (BookDao) ctx.getBean("bookDao");
//        bookDao.save();


        BookService bookService = (BookService) ctx.getBean("bookService");
        bookService.save();
    }
}

三、DI入门案例

1.思路分析

SSM基础—SpringIOC容器_第7张图片

2.具体实现

1.删除使用new的形式创建对象的代码

2.提供依赖对象对应的set方法

package org.example.service.impl;

import org.example.dao.BookDao;
import org.example.dao.impl.BookDaoImpl;
import org.example.service.BookService;

public class BookServiceImpl implements BookService {
    //5.删除业务层中使用new的方式创建的dao对象
    private BookDao bookDao;
    public void save() {
        bookDao.save();
        System.out.println("bookService.....");
    }

    //6.提供对应的set方法

    public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }
}

3.配置service与dao之间的关系


<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">

    
    
    
    <bean id="bookDao" class="org.example.dao.impl.BookDaoImpl"/>

    <bean id="bookService" class="org.example.service.impl.BookServiceImpl" >
        
        
        <property name="bookDao" ref="bookDao" />
    bean>
beans>

总结

使用xml配置的方式来实现spring的IOC和DI,重点了解其概念

你可能感兴趣的:(ssm,java,spring,IOC,DI)