0
点赞
收藏
分享

微信扫一扫

Spring——五大类注解和方法注解详解

草原小黄河 2022-11-18 阅读 79
springjava

文章目录

1.Spring的创建

  1. 先创建一个 maven 项目
    在这里插入图片描述

  2. 添加 Spring 框架支持(Spring-context/Spring-beans)
    配置 pom.xml
    在这里插入图片描述

<dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.3.RELEASE</version>
        </dependency>
 
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.2.3.RELEASE</version>
        </dependency>
    </dependencies>

配置 spring-config.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"
       xmlns:content="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
    <content:component-scan base-package="com.beans"></content:component-scan>
</beans>
  1. 创建一个启动类并添加 main

在这里插入图片描述

2.Spring对象的存储

存储 Bean 分为一下3步:

  1. 存储 Bean 之前,先创建 Bean
    在这里插入图片描述
    在这里插入图片描述

  2. 配置文件 Spring-confing.xml

  3. 将创建的 Bean 注册到 Spring 容器中

3.将 Bean 对象通过配置文件注册到 Spring 当中

在这里插入图片描述

4.从 Spring 中将 bean 对象读取出来并使用

4.1 先得到 Spring 上下文对象

4.2 再通过上下文对象提供的方法获取需要使用的baen对象

4.3 使用bean对象[可选步骤]

在这里插入图片描述

4.4 获取 getBean 的更多方法

在这里插入图片描述

5.ApplicatonContext VS BeanFactory

在这里插入图片描述
相同点:

不同点:

6.总结

在这里插入图片描述

7. 更简单的读取存储Bean(使用注解)

7.1 前置工作(配置扫描路径)

在配置文件中配置扫描路径

在这里插入图片描述

8. 使用类注解和方法注解

8.1 使用五大类注解

@Controller[控制器]

在这里插入图片描述
@Service[服务]

在这里插入图片描述
@Repository[仓库]

在这里插入图片描述

@Configuration[配置]
在这里插入图片描述
@Component[组件]

在这里插入图片描述

注意:当我们使用 bean 和 类型 获取 bean 时,bean的名字 要用小驼峰

在这里插入图片描述

8.2为什么需要五大注解以及其中的关系

目的:让代码可读性提高,能直观的判断当前类的用途

在这里插入图片描述

8.3 使用方法注解 @Bean

8.4 配合 方法注解配合类注解使用

在Spring 框架的设计中,方法注解 @Bean 要配合类注解才能将对象存储到Spring容器中

  1. 创建一个 Bean
    在这里插入图片描述

  2. 创建一个 User 对象

在这里插入图片描述

  1. 在启动类当中获取 User 对象

public class App {
    public static void main(String[] args) {
       //1. 先得到上下文对象
        ApplicationContext context =
                new ClassPathXmlApplicationContext("spring-config.xml");
 
        User user = context.getBean("user1",User.class);
        System.out.println(user);
    }
}

8.5 重命名 Bean

@Bean 命名规则

在这里插入图片描述

通过使用 Bean 里面的 name 就可以获取到对象

在这里插入图片描述

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

9. 对象注入(对象装配)

前面我们讲的 五大类注解和方法注解都是将 对象存储到 Spirng 当中,而对象的注入(对象的装配)是把对象从 Spring 当中 取出来

对象注入,我们提供了三种注入的方式:

  1. 属性 注入(字段注入)
  2. 构造方法 注入
  3. Setter 注入

9.2 属性注入和构造方法注入以及 Setter 注入的区别

属性注入:

在这里插入图片描述

Setter注入:

在这里插入图片描述

构造方法注入:

在这里插入图片描述

另一种注入注解 @Resource

注意事项:@Resource 支持属性注入和 Setter 注入,但不支持构造方法注入

10.@Resource vs @Autowired

  1. 出身不同:@Resource 来自于 JDK,@Autowired 是 Spring 框架提供的
  2. 用法不同:@Autowired 支持 属性注入,构造方法注入和Setter 注入,而 @Resource 不支持构造方法注入
  3. 支持的参数不同:@Resource 支持大量参数,不如 name ,type 设置,而 @Autowired 只支持 required 参数设置
举报

相关推荐

0 条评论