首页 > 其他分享 >@NotNull和@NonNull注解得区别

@NotNull和@NonNull注解得区别

时间:2023-08-17 11:31:44浏览次数:31  
标签:NonNull NotNull name NotNUll 注解 parameter String

今天敲代码得时候遇到了一个警告

Not annotated parameter overrides @NonNull parameter 

这个警告得原因是 你这个类继承得那个类 参数被@NonNull注解标记了,但是你实现类没有使用这个注解。

我产生得地方是我的类 继承ItemProcressor 重写它得process方法得时候

这时候,就产生疑问

@NonNull注解是什么作用?和@NotNUll注解有什么区别。然后就去百度了,这里将结果记录下,当作笔记。

@NotNUll是用在字段上得

@NonNull是用在参数上得

举例:

@NotNUll

private String name;


public void test(@NonNull String name){

sout("测试")

}


标签:NonNull,NotNull,name,NotNUll,注解,parameter,String
From: https://blog.51cto.com/u_16205743/7120186

相关文章

  • @transcational注解
    @transcational注解能用在任何springboot项目的组件的方法里也就是被@component修饰的类常见的service类的@service注解内部就有@component注解,所以可以直接使用@transcational注解进行回滚微服务就是@globaltranscational具体使用可能要配合异步线程或者一些异步消息时处......
  • (Java实体类比表字段多处理方案)注解忽略实体类属性
    背景实体类多添加了几个字段用于查询,如果项目中使用了mybatis或mybatisplus会导致找不到表中字段的错误Causedby:java.sql.SQLSyntaxErrorException:Unknowncolumn'create_start_time'in'fieldlist'解决项目中使用mybatisimportorg.springframework.data.annotat......
  • Java自定义注解
    注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。本文将通过示例详解Java如何实现自定义注解,需要的可以参考一下 −目录概念作用JDK中预定义的一些注解注解生成文档案例自定义注解格式本质属......
  • @JsonComponent注解自定义JSON序列化与反序列化
    1.概述本篇教程将聚焦于如何使用SpringBoot中的@JsonComponent通过使用这个注解,我们不需要手动引用ObjectMapper对象就可以将一个类暴露为Jackson的serializer与deserializer。由于这是SpringBoot提供的功能,所以我们不需要添加额外的依赖,我们可以直接在SpringBoot程序中使用它......
  • @ConditionalOnExpression 注解
    @ConditionalOnExpression注解如果有一个基类,它下面有子类实现比如v1,v2,v3三个子类,但使用的时候,springboot服务启动的时候,只想指定用其中的一种,这种情况要怎样做呢?比如基类:RentPlan出租计划它有几个实现类RentPlanV1,RentPlanV2,RentPlanV3这三个实现类,希望用相同......
  • 如何用Spring 原生注解 快速实现策略模式+工厂模式
    前言这阵子在做项目组重构的工作,工作中的一部分就是就目前代码库中与企业交互的逻辑抽离出来,单独做一个微服务,实现企业交互逻辑的关注点分离。在这里面我很自然而然的就用到了策略模式+工厂模式的方式,包装内部实现细节,向外提供统一的调用方式,有效的减少if/else的业务代码,使......
  • spring boot注解
    1.测试运行环境:通过@RunWith和@SpringBootTest启动spring容器。@RunWith(SpringRunner.class),让测试运行于Spring测试环境@SpringBootTest(classes={RouteManageApplication.class})替代了spring-test中的@ContextConfiguration注解,目的是加载ApplicationContext,启动spring......
  • 注解与反射
    注解与反射1.注解1.1内置注解@SuppressWarnings("all")Stringname;1.2元注解负责解释其他注解@Target:表示注解可以用在哪些地方(class,method...)@Retention:表示注解在什么地方有效。runtime>class>sources@Documented:表示是否将我们的注解生成在javado......
  • @RequestParam,@PathParam,@PathVariable等注解区别
    @RequestParam和@PathVariable注解是用于从request中接收请求的,都可接收参数@RequestParam是从request里取值@PathVariable是从一个URI模板里面来填充@RequestParam示例URL如下:http://localhost:8080/springmvc/hello/101?param1=java&param2=edge复制获取代码:......
  • MyBatis--注解开发
    MyBatis注解开发MyBatis常用注解将映射文件替换为注解:publicinterfaceUserMapper{@Insert("insertintouservalue(...)")publicvoidsave(Useruser);@Update("")publicList<User>findAll();}其他delete,select等注解类似之后将之前核心配置文件中的加载......