spring注解的开端(@Component替代bean标签的使用)
创始人
2024-05-24 19:46:00
0

目录

一、介绍

1.什么是注解开发?

2.Spring注解的版本

3.基于spring注解的应用

4. @Component的细分注解

5.相关注解

二、简单例子讲解

1.类打注解

2.扫描注解放入工厂

3.总工厂取注解调用

4.运行结果

总结:


一、介绍

1.什么是注解开发?

 Spring除了xml配置文件进行配置之外,还可以使用注解方式进行配置,注解方式慢慢替代xml配置。注解开发比xml文件配置要方便许多

2.Spring注解的版本

2.0时代:spring开始出现注解

2.5时代:spring的Bean配置可以使用注解完成

3.0时代:spring其他配置也可以使用注解完成,进入了全注解时代

3.基于spring注解的应用

主要是使用注解的方式代替原有的xml的标签及其标签属性的设置,使用@Component注解替代标签

 @Component:使用该注解的类,会在指定扫描范围内被spring加载并实例化(就是使用这个注解的类,会在spring的xml文件中被扫描到然后进行实例化)

ps:注解就像一个个标签,贴在类上面,统一交给spring的xml文件去管理,谁要获取就从xml的工厂里面去获取这个标签名字就好了。

4. @Component的细分注解

 由于Java EE开发是分层的,为了每层Bean标识的注解语义更加明确, @Component又延申出了如下的3个注解

@Repository:在Dao层类上使用

@Service:在service层类上使用

@Controller:在web层类上使用

5.相关注解

1.@Scope:在类上使用。标注bean的作用范围,取值为singleton或者prototype

2.@Lazy:在类上使用标注bean是否延迟加载,取值为true或者false

3.@PostConstruct:在方法上使用,标注bean的实例化后执行的方法

4.@PreDestroy:在方法上使用,标注bean的销毁前执行方法

二、简单例子讲解

准备工作:建好spring环境👇

快速入门使用spring详细步骤(介绍、导入依赖、第一个简单程序)_云边的快乐猫的博客-CSDN博客

正式开始👇

1.类打注解

即:建立一个类。然后给这个类打上标签(注解) 。要不然在很多类管理工厂(spring.xml)里面,怎么识别你是哪个类。

package com.spring6.demo;import org.springframework.stereotype.Component;//1.添加@Component注解,括号里面的是自定义名称,不过为了识别方便,最好和类名一样。ps:如果括号里面不配置名称,那么就默认为该类名的小写名称
@Component("Hello")
public class Hello {
}

2.扫描注解放入工厂

即:在类管理工厂(spring的xml)文件里面编写一个扫描组件去扫描这些类。

ps:xml文件的创建方法:在resources里使用快捷键alt+insert ,XML配置文件-->spring配置。

看不懂的可以看中文版本



3.总工厂取注解调用

即:建立一个类去从工厂里面获取打了标签(注解)的类进行输出。

package com.spring6.demo;import org.springframework.context.support.ClassPathXmlApplicationContext;public class TextHello {public static void main(String[] args) {//1.扫描spring管理工厂xml文件ClassPathXmlApplicationContext atx = new ClassPathXmlApplicationContext("spring6.xml");//2.从xml工厂里面根据注解名调用类Object H = atx.getBean("Hello");//3.打印输出System.out.println(H);}
}

4.运行结果

总结:

注解就是使用注解标签去替代在spring的bean标签里面的扫描id,class这些,因为原先xml这些每个类都要写上id,还要class的位置就很麻烦,现在直接使用注解在该类上面标上就省去了这些繁琐的步骤。不过还是要在xml文件里面配置组件包扫描。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...