1.3 初探Spring - 利用注解配置类取代Spring配置文件

一、利用注解配置类取代Spring配置文件

1、打开项目

Maven项目 - SpringDemo
在这里插入图片描述

2、创建新包

在net.hf.spring包创建day03子包
在这里插入图片描述

3、拷贝类与接口

将day02子包的类与接口拷贝到day03子包
在这里插入图片描述

4、创建注解配置类

在day03子包里创建SpringConfig类,取代Spring配置文件
在这里插入图片描述

package net.hf.spring.day03;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

/**
 * 功能:注解配置类
 * 作者:hf
 * 日期:2023年02月21日
 */
@Configuration // 表明是Spring配置类
@ComponentScan("net.hf.spring.day03")
public class SpringConfig {
}

注解@Configuration声明当前类是一个配置类,对应一个Spring配置文件,可以取而代之。
注解@ComponentScan自动扫描包名下所有使用@Component、@Service、@Repository、@Mapper、@Controller的类,并注册为Bean。
注解@ComponentScan(“net.hf.spring.day03”)相当于Spring配置文件里的<context:component-scan base-package=“net.hf.spring.day03”/>。

5、创建测试类

在test/java里创建net.hf.spring.day03包,在包里创建TestKnight类
在这里插入图片描述

package net.hf.spring.day03;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

/**
 * 功能:测试骑士类
 * 作者:hf
 * 日期:2023年02月20日
 */
public class TestKnight {
    private AnnotationConfigApplicationContext context; // 基于注解配置类的应用容器

    @Before
    public void init() {
        // 基于注解配置类创建应用容器
        context = new AnnotationConfigApplicationContext(SpringConfig.class);
    }

    @Test
    public void testKnight() {
        // 根据名称从应用容器里获取勇敢骑士对象
        Knight knight1 = (Knight) context.getBean("RobinHood");
        // 勇敢骑士执行任务
        knight1.embarkOnQuest();

        // 根据名称从应用容器里获取救美骑士对象
        Knight knight2 = (Knight) context.getBean("rescueDamselKnight");
        // 救美骑士执行任务
        knight2.embarkOnQuest();
    }

    @After
    public void destroy() {
        // 关闭应用容器
        context.close();
    }
}

6、运行测试类

运行testKnight测试方法,查看结果
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 如果你在使用高版本的spring-boot-starter-web时遇到了运行问题,可能有几个原因导致。首先,你需要确保你的项目的pom.xml文件已经正确引入了spring-boot-starter-web的依赖。根据引用\[2\]的内容,当你引入了spring-boot-starter-web的依赖后,就无需再引入spring-boot-starter核心启动器的依赖了。其次,你需要检查你的项目是否有正确的配置文件,比如application.properties或application.yml文件,以确保你的项目的配置是正确的。最后,你还需要检查你的代码是否有错误或者其他的问题,比如是否有冲突的依赖等等。如果你仍然无法解决问题,建议你查看官方文档或者寻求相关的技术支持。 #### 引用[.reference_title] - *1* [springboot初探---spring-boot-starter-web究竟干了啥](https://blog.csdn.net/weixin_35990136/article/details/113999995)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [spring-boot-starter-web(Web启动器)](https://blog.csdn.net/qq_35366269/article/details/125077830)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值