Spring框架大量注解会影响性能吗(spring中的注解)

互联网- 2023-08-04 08:03:45

Spring源码分析

style="text-indent:2em;">老铁们,大家好,相信还有很多朋友对于Spring框架大量注解会影响性能吗和java 不建议使用注解的相关问题不太懂,没关系,今天就由我来为大家分享分享Spring框架大量注解会影响性能吗以及java 不建议使用注解的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

本文目录

  1. Java开发如果不让使用spring框架,会有多大影响
  2. Spring框架大量注解会影响性能吗
  3. Java注释跑不起来是什么原因
  4. java中的几种注释方式

Java开发如果不让使用spring框架,会有多大影响

这个想法不错!如果没有spring,我们正常的一个项目应该怎么搭建和开发?

不允许使用Spring框架意味着搭建的项目不允许使用SpringBoot、SpringMVC、Spring这些Spring家族的框架,既然如此ORM框架我们也不要使用,在这样的限制条件下,项目应该如何搭建?日常CRUD应该如何开发?

心动不如行动,开始搭建,先创建一个简单的maven项目no_spring_example:

这个项目我们需要它具备如下的几个能力:

1、能够提供http接口访问能力;

2、能够操作MySQL数据库,支持事务,支持连接池;

3、能够操作redis;

4、可以部署在tomcat容器。

开始搭建中。。。

竟然花了我将近2个小时的时间,终于跑起来了,先看看项目整体架子:

相关包介绍:

org.example.conf:

DruidUtil:数据源配置,采用的是阿里巴巴开源的druid;MysqlBaseUtil:Mysql数据库的增、删、改、查基本操作,支持单次和批量;RedisUtil:redis操作工具类,采用的是JedisPool。

org.example.dao:

Test1Dao:这个就是对数据库里test1表的操作。

org.example.dispatcher:

StartupServlet:启动类Servlet,利用loda-on-startup来初始化加载WEB-INF/config目录的一些配置文件;Config:即加载servlet.conf文件中的配置信息,比如MySQL连接信息、redis连接信息

org.example.filter:

GolbalFilter:全局过滤器,web三大组件之一;

org.example.servlet:

Test1AddServlet:新增数据api;

让我们把它运行到tomcat容器中,然后访问接口:http://localhost:8080/no_spring_example_war/test1/add.do

返回成功了,查看数据库表数据:

这样我们的数据库操作就通了,一个完全没有Spring相关框架参与的小架子就搭建完毕!

由于篇幅原因,涉及到redis操作、数据库事务并没有展现,感兴趣的同学可以私信我获取该项目源代码,让我们一起回忆青春~

回到问题本身,没有spring框架,对我们开发有什么影响?

结合上面这个项目来看,确实需要我们自己做的事情比较多,比如:

参数的获取、校验、序列化成对象;数据的返回,反序列化成json;数据库的操作需要我们手写sql;连接池需要我们自己初始化,事务需要我们自己回滚;只能使用Filter、Interceptor,不再有强大的AOP,这个也需要你自己去实现;随着业务的复杂,我们需要集成其他功能,例如异步、中间件等都需要我们自己去开发;

用惯了Spring框架的我们,或许这个时候才知道它的好吧~

不过话说回来,如果真的在实际工作中不用Spring框架完成一个项目的话,你的基础能力一定会有很大的提升,包括工具类的抽取、对象的封装,基础组件的使用以及理解等,只要你是一个有追求的程序员~

框架虽好用,但是却容易蒙住我们的双眼。

最后,给你们再看一眼曾经多么熟悉的web.xml:

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

Spring框架作为当下最流行的Java框架,现在市场占有率极高,在使用Spring框架时相信大家都被它强大的注解功能所吸引,也正是因为Spring强大的注解功能,使得我们开发效率大大提高。然而不少开发人员会质疑大量注解是否会对程序性能产生影响。要知道,对于任何一个大型平台而言,性能及稳定性也是相当重要的。

Spring注解实现原理

Spring(Java)对注解的支持其实是通过反射来实现的(反射的效率比原生效率要低),注解本身是不做任何事的,它充当的只是一种配置作用,存储在字节码特定区域内会占用一定内存空间。另外,注解本身也是一种特殊注释,对于Java而言注释过多会影响编译效率,但不会影响执行效率。

Java中注解主要有两类:运行时注解、编译时注解。这两者区分则要看注解是如何定义的,一般说来运行时注解对程序性能是有一定影响的,而编译性注解对程序性能无影响。

Spring注解会影响项目初始化时间

Spring项目在启动时会扫描注解,若存在过多注解就会影响项目启动时间。一旦项目成功启动后,相关配置都是有缓存机制的,对系统性能影响不大,可以忽略不计。

Spring注解对应的功能才会影响性能

Spring注解本身是不会对性能产生影响的,但Spring注解对应的功能实现(也就是业务代码)才会对性能产生影响,只要在项目中避免使用过多的运行时注解,问题则不会太大。

以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流~我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!

Java注释跑不起来是什么原因

你说的是普通注释还是注解?注释肯定是跑不起来的呀!java中,注解本身不会做什么事,专门的注解执行类根据注解去执行。注解本质上相当于一个标记,另外的专门的类根据此标记做具体的事。你看看你的注解会保存到什么时候,有没有注解执行类。

java中的几种注释方式

1、第一步我们首先需要知道java一共有三种注释方式,单行注释//,多行注释/**/,文档注释/***/,如下图所示:

2、第二步打开eclipse,在java代码中使用单行注释//,一般单行注释,注释少量代码或者说明内容,如下图所示:

3、第三步java代码中使用多行注释/**/,一般使用多行注释大量的代码或者说明内容,如下图所示:

4、第四步使用文档注释/***/,文档注释一般用于对类和方法进行功能说明,如下图所示:

5、第五步我们也可以使用快捷键注释代码,选中要注释的代码,如下图所示:

6、第六步使用ctrl+?键进行注释代码,再次按ctrl+?键就取消注释,也可以使用ctrl+shift+c对jsp的代码进行注释,如下图所示:

如果你还想了解更多这方面的信息,记得收藏关注本站。

手撸架构,Spring面试63问
  • 声明:本文内容来自互联网不代表本站观点,转载请注明出处:bk.66688897.com/1/83701.html
上一篇:qq厘米秀怎么设置好看的(qq厘米秀在哪里设置方法)
下一篇:qq手势密码如何绘制高难度的锁(qq手势密码弄什么图案简单)
相关文章
返回顶部小火箭