Spring IOC快速入门——(一)

Spring IOC快速入门

Spring IOC底层实现原理

在这里插入图片描述

Spring官方下载地址:

https://repo.spring.io/libs-release-local/org/springframework/spring/

目录结构:

docs:api文档和开发规范
libs:开发需要的jar包和源码
schema:开发需要的schema文件
在这里插入图片描述

新建项目:

在这里插入图片描述

在这里插入图片描述项目结构:

没有resources解决方法:

在这里插入图片描述
在这里插入图片描述

ok

项目测试:

在这里插入图片描述

在pom.xml中导入依赖文件

在这里插入图片描述

copy代码:

 <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>4.2.4.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>4.2.4.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
      <version>4.2.4.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-expression</artifactId>
      <version>4.2.4.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter</artifactId>
      <version>RELEASE</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>

新建Java文件

在这里插入图片描述

Java文件变成源代码文件

右键java文件

在这里插入图片描述

测试传统开发方式和Spring反转控制和依赖注入

在resources下新建xml配置文件

在这里插入图片描述

copy代码:
<?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">
        <!--UserService的创建权交给了Spring-->
        <bean id="userService" class="com.imooc.ioc.demo1.UserServiceImpl">
                <!--设置属性-->
                <property name="name" value="食品名称"/>
                <property name="taste" value="食品口味"/>
                <property name="kind" value="食品种类"/>
        </bean>

</beans>

1.新建包

2.新建接口UserService

public interface UserService {
    public void sayHello();
}

3.新建类UserServiceImpl

public class UserServiceImpl implements UserService {
    private String name;
    private String taste;
    private String kind;

    public  void sayHello(){
        System.out.println("hello spring");
        System.out.println(name+kind+taste);

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getTaste() {
        return taste;
    }

    public void setTaste(String taste) {
        this.taste = taste;
    }

    public String getKind() {
        return kind;
    }

    public void setKind(String kind) {
        this.kind = kind;
    }
}

4.新建测试类SpringDemo1

public class SpringDemo1 {
   @Test
    /**
     *传统方式开发
     */
    public void demo1(){
        //UserService userService = new UserServiceImpl();
       UserServiceImpl userService = new UserServiceImpl();
        //设置属性
       userService.setName("张三");
       userService.sayHello();
    }
    @Test
    /**
     *Spring方式实现
     */
    public void demo2(){
        //创建Spring的工厂
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
        //通过工厂获得类
        UserService userService =(UserService) applicationContext.getBean("userService");

        userService.sayHello();
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章