Spring刷题笔记 面试题 请举例解释@Required注解?

news/2024/7/7 11:26:31 标签: spring, java, 后端

在产品级别的应用中,IoC容器可能声明了数十万个bean,bean与bean之间有着复杂的依赖关系。设值注解方法的短板之一就是验证所有的属性是否被注解是一项十分困难的操作。可以通过在<bean>中设置“dependency-check”来解决这个问题。

在应用程序的生命周期中,你可能不大愿意花时间在验证所有bean的属性是否按照上下文文件正确配置。或者你宁可验证某个bean的特定属性是否被正确的设置。即使是用“dependency-check”属性也不能很好的解决这个问题,在这种情况下,你需要使用@Required 注解。

需要用如下的方式使用来标明bean的设值方法。

java">public class EmployeeFactoryBean extends AbstractFactoryBean<Object>{
private String designation;
public String getDesignation() {
return designation;
}
@Required
public void setDesignation(String designation) {
this.designation = designation;
}
//more code here
}

RequiredAnnotationBeanPostProcessor是Spring中的后置处理用来验证被@Required 注解的bean属性是否被正确的设置了。在使用RequiredAnnotationBeanPostProcesso来验证bean属性之前,首先要在IoC容器中对其进行注册:

<bean class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor/>

 但是如果没有属性被用 @Required 注解过的话,后置处理器会抛出一个BeanInitializationException 异常。


http://www.niftyadmin.cn/n/843520.html

相关文章

Remastersys打包你自己的ubuntu成iso文件,保存原来的所有配置

你是不是辛辛苦苦地配好了ubuntu结果不久又重装&#xff0c;然后又重新配置很久呢&#xff1f; 笔者好不容易配置好了torch&#xff0c;但是换硬盘&#xff0c;于是就想到了将ubuntu打包成iso文件&#xff0c;下次直接安装&#xff0c;然后配置好的东西都搬过来了。 采用Remast…

Spring刷题笔记 面试题 请举例解释@Autowired注解?

Autowired注解对自动装配何时何处被实现提供了更多细粒度的控制。 Autowired注解可以像Required注解、构造器一样被用于在bean的设值方法上自动装配bean的属性&#xff0c;一个参数或者带有任意名称或带有多个参数的方法。 比如&#xff0c;可以在设值方法上使用Autowired注解…

vue-cli搭建的项目中localhost能访问而ip不能访问的解决方法

只需要在config文件夹里面的index.js文件里面的module.exports下面的dev中的 host:localhost 改为 host:0.0.0.0 ,然后重启服务器就可以访问了。

fullcalendar 使用教程

$(#calendar).fullCalendar({header : {left : today prev,next,center : title,right : month,basicWeek},buttonText : {month : 月视图,week : 周,day : 日视图},defaultDate : date,eventPhase : 5,editable : false,// 可以拖动selectable : true,eventLimit : true, even…

vue项目中使用ref来获取dom及给class绑定属性的命名注意事项

使用ref来获取dom的时候&#xff0c;在给ref命名的时候尽量使用驼峰命名法&#xff0c;不能使用-&#xff08;像‘auto-play’这样的命名就是错误的&#xff0c;应该改为autoPlay这样&#xff09;&#xff1b; 而在给class绑定属性的时候&#xff0c;也应该避免使用-。例如&…

Spring刷题笔记 面试题 请举例说明@Qualifier注解?

Qualifier注解意味着可以在被标注bean的字段上可以自动装配。 Qualifier注解可以用来取消Spring不能取消的bean应用。 下面的示例将会在Customer的person属性中自动装配person的值。 public class Customer{ Autowired private Person person; } 下面我们要在配置文件中来配…

GPS坐标互转:WGS-84(GPS)、GCJ-02(Google地图)、BD-09(百度地图)

WGS-84&#xff1a;是国际标准&#xff0c;GPS坐标&#xff08;Google Earth使用、或者GPS模块&#xff09;GCJ-02&#xff1a;中国坐标偏移标准&#xff0c;Google Map、高德、腾讯使用BD-09&#xff1a;百度坐标偏移标准&#xff0c;Baidu Map使用//WGS-84 to GCJ-02GPS.gcj_…

ubuntu系统下安装webstorm流程

1.官网下载地址&#xff1a;http://www.jetbrains.com/webstorm/download/#sectionlinux-version2.将安装包解压&#xff0c;进入安装包文件目录bin&#xff0c;启动终端&#xff0c;输入命令&#xff1a;sh webstorm.sh &#xff0c;将其启动&#xff0c;启动后右键将其固定在…