java元注解有什么用处 Spring框架大量注解会影响性能吗?

[更新]
·
·
分类:互联网
1264 阅读

java元注解有什么用处

Spring框架大量注解会影响性能吗?

Spring框架大量注解会影响性能吗?

注解好用,但说了会影响性能,大公司在高并发场景下的编码有没有要求少用注解呢?

Spring框架作为当下最流行的Java框架,现在市场占有率极高,在使用Spring框架时相信大家都被它强大的注解功能所吸引,也正是因为Spring强大的注解功能,使得我们开发效率大大提高。然而不少开发人员会质疑大量注解是否会对程序性能产生影响。要知道,对于任何一个大型平台而言,性能及稳定性也是相当重要的。
Spring注解实现原理Spring(Java)对注解的支持其实是通过反射来实现的(反射的效率比原生效率要低),注解本身是不做任何事的,它充当的只是一种配置作用,存储在字节码特定区域内会占用一定内存空间。另外,注解本身也是一种特殊注释,对于Java而言注释过多会影响编译效率,但不会影响执行效率。
Java中注解主要有两类:运行时注解、编译时注解。这两者区分则要看注解是如何定义的,一般说来运行时注解对程序性能是有一定影响的,而编译性注解对程序性能无影响。
Spring注解会影响项目初始化时间Spring项目在启动时会扫描注解,若存在过多注解就会影响项目启动时间。一旦项目成功启动后,相关配置都是有缓存机制的,对系统性能影响不大,可以忽略不计。
Spring注解对应的功能才会影响性能Spring注解本身是不会对性能产生影响的,但Spring注解对应的功能实现(也就是业务代码)才会对性能产生影响,只要在项目中避免使用过多的运行时注解,问题则不会太大。
以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!

注解是编译时运行,在生成class字节码前编译为代码,注解不一定会影响性能,但能提高开发效率,可能会增加review的难度,整体来讲,用的好可以提高开发效率,阿里巴巴的代码规范也没有对注解有排斥,所以很多大厂也不会排斥使用。

注解的入门,什么是注解?

1、注解是针对Java编译器的说明。
可以给Java包、类型(类、接口、枚举)、构造器、方法、域、参数和局部变量进行注解。Java编译器可以根据指令来解释注解和放弃注解,或者将注解放到编译后的生成的class文件中,运行时可用。
2、注解和注解类型
注解类型是一种特殊的接口类型,注解是注解注解类型的一个实例。
注解类型也有名称和成员,注解中包含的信息采用键值对形式,可以有0个或多个。
3、Java中定义的一些注解:
@Override 告诉编译器这个方法要覆盖一个超类方法,防止程序员覆盖出错。
@Deprecated 这个标识方法或类(接口等类型)过期,警告用户不建议使用。
@SafeVarargs JDK7新增,避免可变参数在使用泛型化时候警告”执行时期无法具体确认参数类型“,当然,也可以用@SuppressWarnings来避免检查,显然后者的抑制的范围更大。
@SuppressWarnings(value{