这篇文章主要为大家介绍了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注解及函数式注册对象
基础教程推荐
猜你喜欢
- springboot自定义starter方法及注解实例 2023-03-31
- java基础知识之FileInputStream流的使用 2023-08-11
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- Java文件管理操作的知识点整理 2023-05-19
- Java数据结构之对象比较详解 2023-03-07
- java实现多人聊天系统 2023-05-19
- Java实现线程插队的示例代码 2022-09-03
- Java并发编程进阶之线程控制篇 2023-03-07
- Java实现查找文件和替换文件内容 2023-04-06