网站首页 > 开源技术 正文
Spring Framework 及其顶层实现 Spring Boot 和 Spring MVC 是 Java 世界中最常用的框架。它被使用得越多,随着时间的推移就会出现越多的不好和好的做法。
Spring DI:构造注入优先于 Field 和 Setter 注入
JavaBeans的字段和setter方法注入难以测试,容易发生循环依赖,是非常开放的可变性,此外,Setter 注入会导致样板代码。最好的解决方案是使用构造函数注入,这也是 Spring 官方推荐的。使用此方法可以轻松地使变量不可变。由于构造函数增长,因此很容易检测到依赖关系的增长。
忘记基于 XML 的配置
现在强烈反对基于 XML 配置 Spring 应用程序。基于 XML 的配置会导致样板代码,非常冗长,因此在 IDE 中阅读和搜索极其困难。最好的方法是使用嵌入在代码中的基于注释的配置。对于程序员来说,它很容易掌握并且更具可读性。
不正确的测试
测试基于 Web 的 Spring 应用程序经常被忽视。很少有团队通过完善的集成测试对 Spring Boot 应用程序进行广泛的测试。确保开发团队了解Spring 测试框架 提供的测试功能的威力。
不要从头开始手动构建新应用程序
许多传统程序员喜欢完全控制应用程序。所以他们尝试手动构建 pom 文件并从头开始构建应用程序。Spring 附带易于使用且方便的工具Spring Initializr,它可以创建具有正确选择的依赖项和正确结构的 Spring Boot 应用程序。这是从 Spring 正式生成新应用程序的推荐方式。当前的 IDE(如 Eclipse Intellij)具有用于Spring Initializr 的第三方插件。
没有好的日志
糟糕的日志记录是每个软件产品都头疼的问题。特别是,当生产错误出现时。不正确的日志记录使每个开发人员都感到困难,因为他/她盲目地寻找根本原因。LogBack是一个功能强大的插件,请务必正确使用它。
不要将 Spring 集成到核心业务逻辑中
RCMartin 的着名书籍“Clean Architecture”指出,业务逻辑代码应该不受任何第三方框架、数据库、UI 的影响。如果域没有框架,那么明天如果框架消失,核心业务代码将不会有技术债务。所以Domain类不应该像@Component、@Autowired、@Service那样有Spring的任何注解,而应该是传统实例化的简单Java类。
猜你喜欢
- 2024-11-18 大厂面试系列(四):Spring相关
- 2024-11-18 SpringBoot入门系列(一)如何快速创建SpringBoot项目
- 2024-11-18 Spring Boot 2.4 部署你的第一个应用需要的环境
- 2024-11-18 跟着振锁撸全栈之JAVA入门 | 创建自己的第一个网站项目
- 2024-11-18 SpringBoot这玩意儿当然不能更好了
- 2024-11-18 Java基础学习路线之SpringBoot入门
- 2024-11-18 为什么 IDEA 把 Spring Boot 宠上天,这些神仙技巧告诉你答案
- 2024-11-18 Tomcat回显技术学习汇总
- 2024-11-18 年末的一波美团面试,被一波连环炮给轰了回来,做足准备来年再战
- 2024-11-18 IDEA不能一个窗口管理多个项目?那是你不会用
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)