这篇文章主要为大家介绍了Spring5新功能详解@Nullable注解及函数式注册对象,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
Spring5新功能
一、@Nullable 注解
@Nullable 注解可以使用在方法、属性、参数上,分别表示方法返回可以为空、属性值可以为空、参数值可以为空。
我们可以在源码里找到很多示例。
1. 用在方法上
方法的返回值可以为空。

2. 用在参数上
参数可以为空。

3. 用在属性上
属性值可以为空。

二、支持函数式风格
比如这里有一个类:
public class User {
public static void main(String[] args) {
User user = new User();
}
}在 main 方法里手动创建了一个对象,但是这个并没有交给 spring 管理,因为没有注册。
spring5 里支持函数式风格创建对象,并交给 spring 来管理。
@Test
public void testGeneric() {
// 创建 GenericApplicationContext 对象
GenericApplicationContext context = new GenericApplicationContext();
// 调用 context 对象的方法进行注册,用 Lambda 表达式
context.refresh();
context.registerBean("user1", User.class, () -> new User());
// 获取在 spring 中创建的对象
User user = (User) context.getBean("user1");
System.out.println(user);
}运行测试:
com.pingguo.spring5.test.User@76707e36
Process finished with exit code 0以上就是Spring5新功能详解@Nullable注解及函数式注册对象的详细内容,更多关于Spring5 @Nullable注解的资料请关注编程学习网其它相关文章!
编程基础网
本文标题为:Spring5新功能@Nullable注解及函数式注册对象
基础教程推荐
猜你喜欢
- Java实现插入排序算法可视化的示例代码 2023-04-23
- Java多线程学习笔记之三内存屏障与Java内存模型 2023-09-01
- MyBatis-Plus自定义通用的方法实现 2023-07-15
- 一文带你搞懂Java中方法重写与方法重载的区别 2023-07-14
- java知识点7——面向过程和面向对象、面向对象的内存分析、构造方法 2023-09-01
- RocketMQ Push 消费模型示例详解 2023-05-24
- 关于Java双大括号{{}}的具体使用 2023-03-15
- Java Web开发中过滤器和监听器使用详解 2023-06-30
- Spring Cloud Config分布式配置中心使用介绍详解 2023-05-07
- Java List的get方法 2023-10-08
