zoukankan      html  css  js  c++  java
  • 对Spring Ioc的理解

    1. 新建一个maven项目,工程目录如下

    2. 添加接口MessageService及其实现类MessageServiceImpl

    MessageService.java

    package com.peppa.service;
    
    public interface MessageService {
        String getMessage();
    }

    MessageServiceImpl.java

    package com.peppa.serviceImpl;
    
    import com.peppa.service.MessageService;
    
    public class MessageServiceImpl implements MessageService {
        @Override
        public String getMessage() {
            return "hello world!";
        }
    }

    pom文件中添加spring-context依赖

    <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>5.1.5.RELEASE</version>
            </dependency>

    在resources目录下添加application.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" default-autowire="byName">
        <bean id="messageService" class="com.peppa.serviceImpl.MessageServiceImpl"></bean>
    </beans>

    添加Application.java,将MessageService从context中取出来,而不是使用 new MessageServiceImpl() 获取

    package com;
    
    import com.peppa.service.MessageService;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Application {
        public static void main(String[] args) {
            ApplicationContext context = new ClassPathXmlApplicationContext("classpath:application.xml");
            System.out.println("start success");
            MessageService messageService = context.getBean(MessageService.class);
            System.out.println("will print hello world");
            System.out.println(messageService.getMessage());
        }
    }

    通过配置文件来启动Spring的ApplicationContext,也就是IoC的核心。ApplicationContext启动过程中,会负责创建实例Bean,往各个Bean中注入依赖等。

  • 相关阅读:
    CSS选择器规范
    利用form的“acceptcharset”在不同编码的页面间提交表单
    学习Ruby的基础知识
    Watir和watir webdriver的区别
    PHP in_array() 函数
    Ruby数组的基础知识
    PHP smarty if的条件修饰词
    很好的自动化学习资料 Ruby watir selenium
    $(document).ready() 和window.onload
    收藏:简单的PHP+SMARTY分页类
  • 原文地址:https://www.cnblogs.com/miaoying/p/10594087.html
Copyright © 2011-2022 走看看