Spring学习之旅-核心基础篇(3)

86 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第4天,点击查看活动详情


写在前面

作为一个java程序员,spring应该都不会陌生了吧?

对于大部分程序员来说,spring的入门,估计跑起一个框架,熟悉一下开发的流程,基本上就掌握spring框架的开发了。

随着开发年限的变大,我们不能仅仅是掌握到这个地步,更应该深入的学习spring框架。

这不,接下来就是spring框架的学习之旅了,希望可以帮助到大家。

一、基于XML的使用

1.1 DI配置

概述

  • 什么是依赖
依赖指的就是Bean实例中的属性

依赖(属性)分为:简单类型( 8种基本类型和string类型)的属性、POJO类型的属性、集合数组类型的属性。

  • 什么是依赖注入
依赖注入: Dependency Injection. 它是spring 框架核心IoC的具体实现。
  • 为什么要进行依赖注入
我们的程序在编写时, 通过控制反转,把对象的创建交给了spring ,但是代码中不可能出现没有依赖的情况。

那如果一个bean中包含了一些属性,那么spring帮我们实例化了bean对象之后,也需要将对应的属性信息进行赋值操作,这种属性赋值操作,就是所谓的依赖注入(获取值、注入属性)

1.1.1 依赖注入的方式

1.1.1.1 构造函数注入

顾名思义。就是使用类中的构造函数,给成员变量赋值。

注意:赋值的操作不是我们自己做的,而是通过配置的方式,让spring框架来为我们注入。


public class UserServiceImpl implements UserService {
    private int id;
    private string name;
    
    public UserServiceImpl(int id, string name) {
        this.id = id;
        this.name = name;
    }
    
    @override
    public void saveUser(){
        System.out.println("保存用户:id为"+id+" , name为" +name+" Service实现");
    }
}
<bean id="userService" class="com.llsydn.springStudy.service.UserServiceImpl">
    <constructor-arg name="id" value="1"> </constructor-arg>
    <constructor-arg name="name" value= "llsydn"> </ constructor-arg>
</bean>
<!--使用构造函数的方式,给service 中的属性传值要求:类中需要提供一个对应参数列表的构造函数。
    涉及的标签: constructor-arg
    * index :指定参数在构造函数参数列表的索引位置
    * name: 指定参数在构造函数中的名称
    * value: 它能赋的值是基本数据类型和string 类型
    * ref: 它能赋的值是其他bean类型,也就是说,必须得是在配置文件中配置过的bean
-- !>

好了,以上就是Spring学习之旅-核心基础篇(3) 的全部内容了。

今天就先到这里了,后面的内容,留下次分享了,先溜了!!!^_^

如果觉得写得不错的,帮忙点赞、评论、收藏一下呗!!!

image.png