Spring之常用注解 注解开发 依赖注入 配置类 整合Junit......(1)

简介: Spring之常用注解 注解开发 依赖注入 配置类 整合Junit......(1)

1.依赖注入

所谓依赖注入就是根据key找到对应的对象 这里的key是指 ioc容器他是一个Map结构的容器

key:名字 value:对象

image.png@Component注解

将对象交给Ioc容器管理 @Component有一个属性value 给value赋值一个名字 交给ioc value属性值在ioc中相当于key 可以不给value赋值 那么默认值就是类名首字母改小写 就是它的默认值 为了区分不同层的依赖注解 @Component衍生出三种注解


@Controller 表现层

用来修饰表现层 把表现层的对象交给ioc容器管理


@Service

用来修饰业务层(逻辑层) 把业务层对象交给ioc容器管理


@Repository

用来修饰数据访问层 把数据访问层对象交给ioc管理


三种衍生注解的功能跟@Component的功能完全一样 只是为了区分不同层 如果没有给它指定value属性 默认值就是类名加首字母小写 如果一个接口下有两个实现类 两个注解都没有指定value值 现在要为这个注解依赖注入对象 那么会注入哪个对象呢??? 根据变量名来注入

变量名 要实现类的首字母加小写 就能够实现依赖注入 是那个实现类的就注入哪个实现类的 如果变量名不是实现类的首字母加小写就会报错 value属性名可用省略不写


image.png


2.配置类


@Configuration


用来标记这个类是一个Spring的配置类


@ComponentScan


用来扫描指定包下的注解 将它们放入Ioc容器管理 @ComponentScan有一个属性basePackages 值是一个数组 可以指定多个扫描路径

image.png


3.整合Junit


@RunWith


@RunWith就是一个运行器 用来指定Spring的Junit测试 替代原来的Junit

在Spring5之前指定SpringJUnit4ClassRunner.class Junit测试


@RunWith(SpringJUnit4ClassRunner.class)


在Spring5之后指定SpringRunner.class Junit测试

@RunWith(SpringRunner.class)


@ContextConfiguration


加载配置类 classes属性指定配置类类名.class 配置类去扫描指定注解将它们放入Ioc容器


image.png

相关文章
|
9天前
|
Java Spring
【Spring】方法注解@Bean,配置类扫描路径
@Bean方法注解,如何在同一个类下面定义多个Bean对象,配置扫描路径
136 73
|
10天前
|
设计模式 XML Java
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
本文详细介绍了Spring框架的核心功能,并通过手写自定义Spring框架的方式,深入理解了Spring的IOC(控制反转)和DI(依赖注入)功能,并且学会实际运用设计模式到真实开发中。
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
|
9天前
|
Java Spring
【Spring配置相关】启动类为Current File,如何更改
问题场景:当我们切换类的界面的时候,重新启动的按钮是灰色的,不能使用,并且只有一个Current File 项目,下面介绍两种方法来解决这个问题。
|
9天前
|
Java Spring
【Spring配置】idea编码格式导致注解汉字无法保存
问题一:对于同一个项目,我们在使用idea的过程中,使用汉字注解完后,再打开该项目,汉字变成乱码问题二:本来a项目中,汉字注解调试好了,没有乱码了,但是创建出来的新的项目,写的注解又成乱码了。
|
9天前
|
Java Spring
【Spring配置】创建yml文件和properties或yml文件没有绿叶
本文主要针对,一个项目中怎么创建yml和properties两种不同文件,进行配置,和启动类没有绿叶标识进行解决。
|
17天前
|
NoSQL Java Redis
Spring Boot 自动配置机制:从原理到自定义
Spring Boot 的自动配置机制通过 `spring.factories` 文件和 `@EnableAutoConfiguration` 注解,根据类路径中的依赖和条件注解自动配置所需的 Bean,大大简化了开发过程。本文深入探讨了自动配置的原理、条件化配置、自定义自动配置以及实际应用案例,帮助开发者更好地理解和利用这一强大特性。
67 14
|
17天前
|
XML JSON Java
Spring Boot 开发中常见的错误
本文总结了 Java 开发中常见的几个问题及其改进方法,包括:1. 过度使用 `@Component` 注解;2. `@ResponseBody` 注解的错误用法;3. `@Autowired` 的不当使用;4. `application.properties` 管理不善;5. 异常处理不当。每部分详细解释了错误情况和建议的改进方案,并提供了相应的代码示例。
47 11
|
14天前
|
XML Java 数据格式
Spring容器Bean之XML配置方式
通过对以上内容的掌握,开发人员可以灵活地使用Spring的XML配置方式来管理应用程序的Bean,提高代码的模块化和可维护性。
52 6
|
10天前
|
人工智能 前端开发 Java
Spring AI Alibaba + 通义千问,开发AI应用如此简单!!!
本文介绍了如何使用Spring AI Alibaba开发一个简单的AI对话应用。通过引入`spring-ai-alibaba-starter`依赖和配置API密钥,结合Spring Boot项目,只需几行代码即可实现与AI模型的交互。具体步骤包括创建Spring Boot项目、编写Controller处理对话请求以及前端页面展示对话内容。此外,文章还介绍了如何通过添加对话记忆功能,使AI能够理解上下文并进行连贯对话。最后,总结了Spring AI为Java开发者带来的便利,简化了AI应用的开发流程。
194 0
|
17天前
|
IDE Java 测试技术
互联网应用主流框架整合之Spring Boot开发
通过本文的介绍,我们详细探讨了Spring Boot开发的核心概念和实践方法,包括项目结构、数据访问层、服务层、控制层、配置管理、单元测试以及部署与运行。Spring Boot通过简化配置和强大的生态系统,使得互联网应用的开发更加高效和可靠。希望本文能够帮助开发者快速掌握Spring Boot,并在实际项目中灵活应用。
35 5