码迷,mamicode.com
首页 > 编程语言 > 详细

spring Ioc简单实践

时间:2020-06-15 15:49:27      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:ext   The   image   figure   source   ges   创建   发行版   控制反转   

0. Ioc

https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html#beans-introduction

主要是实现一个控制反转,耦合性大大降低。

1. 建maven项目

建立一个空的maven项目,然后pom.xml添加spring-context的依赖:

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

2. 创建pojo java对象

package com.aca;

public class Hello {
    private String str;


    public void setStr(String str) {
        this.str = str;
    }

    public String getStr() {
        return str;
    }

    public Hello(String str){
        this.str = str;
    }


    @Override
    public String toString() {
        return "Hello{" +
                "str=‘" + str + ‘\‘‘ +
                ‘}‘;
    }
}

3. 创建bean xml配置元数据

配置文件放在resources下。
这里以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
        https://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="Hello" class="com.aca.Hello">
        <constructor-arg type="java.lang.String" value="fffff"/>
    </bean>

</beans>

如果有多个resource或者目录不一致,就需要import一下:

<beans>
    <import resource="services.xml"/>
    <import resource="resources/messageSource.xml"/>
    <import resource="/resources/themeSource.xml"/>

    <bean id="bean1" class="..."/>
    <bean id="bean2" class="..."/>
</beans>

里面可以调用构造函数来初始化一下bean。

4.创建spring 上下文

这里用ClassPathXmlApplicationContext 方法。

     ApplicationContext context = new ClassPathXmlApplicationContext("hbean.xml");

// retrieve configured instance
        Hello hello = context.getBean("Hello", Hello.class);
//        hello.setStr("abc");
        System.out.println(hello);

直接可以用这个bean,由xml注入。

5. Error:java: 错误: 不支持发行版本 5

将file- project structure 中的jdk版本选成跟本地一直,比如我这个jdk14

技术图片

将build -> java complier中的两个版本选择成跟本地一致,这里是14

技术图片

这两步做好以后不会报错,maven里面不需要选择版本。

6. 如果报xml的问题

xml declaration should precede all document

那是因为xml 第一行是空格了,必须<?xml 做为第一行。

spring Ioc简单实践

标签:ext   The   image   figure   source   ges   创建   发行版   控制反转   

原文地址:https://www.cnblogs.com/gqdw/p/13130949.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!