tnblog
首页
视频
资源
登录

常用注解-bean定义常用注解(定义,作用范围,生命周期)13

4468人阅读 2022/7/17 15:35 总访问:1590218 评论:0 收藏:0 手机
分类: spring

1、启动注解功能

·启动注解扫描,加载类中配置的注解项

<context : component-scan base-package="packageName" />

说明:

  • 在进行包所扫描时,会对配置的包及其子包中所有文件进行扫描

  • 扫描过程是以文件夹递归迭代的形式进行的

  • 扫描过程仅读取合法的java文件

  • 扫描时仅读取spring可识别的注解

  • 扫描结束后会将可识别的有效注解转化为spring对应的资源加入loC容器

注意:

  • 无论是注解格式还是XML配置格式,最终都是将资源加载到loC容器中,差别仅仅是数据读取方式不同

  • 从加载效率上来说注解优于XML配置文件


2、bean的定义

2.1名称:@Component@Controller @Service @Repository
类型:类注解

位置:类定义上方

作用:设置该类为spring管理的bean
范例:

@component

public class className { }
说明:

@Controller、@Service 、@Repository是@Component的衍生注解,功能同@Component
相关属性

value(默认)∶定义bean的访问id

案例、
1、

2、

3、调用


2.2、bean的作用域

名称:@Scope

类型:类注解
位置:类定义上方

作用:设置该类作为bean对应的scope属性
范例:

@scope

public class className { }
相关属性

value (默认)︰定义bean的作用域,默认为singleton


2.3、bean的生命周期

名称:@PostConstruct、@PreDestroy
类型:方法注解

位置:方法定义上方

作用:设置该类作为bean对应的生命周期方法
范例:

@PostConstruct

public void init() { system.out.println ( "init. . . "); }

@PostConstruct和@PreDestroy是java自己提供的注解,不是Spring提供的注解


@PostConstruct

@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次。被@PostConstruct修饰的方法会在构造函数之后,init()方法之前运行。

@PreDestroy

@PreDestroy修饰的方法会在服务器卸载Servlet的时候运行,并且只会被服务器调用一次。被@PreConstruct修饰的方法会在destroy()方法之后运行,在Servlet被彻底卸载之前。


在Spring框架中使用到@PostConstruct时,被注解的方法在整个Bean初始化中的执行顺序:

Constructor(构造方法) -> @Autowired(依赖注入) -> @PostConstruct(注释的方法)

蓝色内容转载链接:https://blog.csdn.net/user2025/article/details/106343309/


案例、


小节

开启注解驱动

bean的四种注解定义格式
bean相关属性注解格式

  • id

  • class (class被省略了)

  • scope

  • init-method

  • destrop-method


评价

常用注解-注解配置第三方资源工厂加载bean的形式)14

加载第三方资源名称:@Bean类型:方法注解位置:方法定义上方作用:设置该方法的返回值作为spring管理的bean范例:Bean ( &quot;...

常用注解-引用类型非引用类型注解 15

一、bean的非引用类型属性注入名称:@Value类型:属性注解、方法注解位置:属性定义上方,方法定义上方作用:设置对应属性的值...

常用注解-加载properties文件中的属性 16

一、案例、1、2、有多个properties文件时的用法3、资源没找到忽略资源的用法

常用注解-纯注解驱动制作 17

一、就是代替applicationContext.xml用的案例、1、此时applicationContext.xml这个文件就没用了。2、

IoC配置-bean的基本配置 03

一、二、scope属性名称: scope类型:属性归属: bean标签作用:定义bean的作用范围格式:&lt;bean scope=“singleton&quot;&gt;...

加载控制-bean的延迟加载、顺序加载、依赖关系 19

一、案例、二、配置类案例、1、创建两个配置文件,然后加上@Order,编号越小加载越快2、如果在没有配置文件类没有添加@Orde...

IoC底层核心原理-bean初始化过程解析 04

一、BeanFactoryPostProcessor◆作用:定义了在bean工厂对象创建后,bean对象创建前执行的动作,用于对工厂进行创建后业务处...

C ?、?? 问号和2个问号的用法类型?、对象?)

C# ?C# ???:单问号1.定义数据类型可为空。可用于对int,double,bool等无法直接赋值为null的数据类型进行null的赋值如这...

Python实例 1-日志抓取处理 补错附日志小技巧)

有时候数据出了问题,可以从日志中恢复数据(如果你没记日志..没备份..→_→..)一、日志展示介绍个平常自己用的小方法,如...

C 数组拆分泛型)

主要用到了泛型。泛型是c#2.0的一个新增加的特性,它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值...

MySQL 视图的增删改 查)

要显示视图的定义,需要在SHOWCREATEVIEW子句之后指定视图的名称, 我们先来创建几张表,完事后在进行演示:--用户信息表...

使用NPOI导出excel包括图片)

Excl模板导出相信我们都会,那么模板上要导出图片呢?嗯~还是来个例子:准备工作:首先要引用NPOI包:然后获取数据集(我这...

ajaxSubmit异步上传图片外面都是假的)

引用代码&lt;scriptsrc=&quot;/Scripts/jquery.form.js&quot;&gt;&lt;/script&gt;js就在旁边img链接中,只不过大小为0x0,...

.NET MVC 使用百度编辑器详细教程:1)配置编辑器

一、什么是百度编辑器百度编辑器UEditor是由百度web前端研发部开发一款应用于网站的编辑器,具有轻量,可定制,注重用户体...
没有个性,不需要签名
排名
4
文章
473
粉丝
3
评论
2
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术