加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

使用 Spring Framework 时常犯的十大错误

发布时间:2019-07-29 17:22:21 所属栏目:移动互联 来源:锅外的大佬
导读:Spring 可以说是最风行的 Java 框架之一,也是一只必要顺从的强盛野兽。固然它的根基观念相等轻易把握,但成为一名强盛的 Spring 开拓者仍必要许多时刻和全力。 在本文中,我们将先容 Spring 中一些常见的错误,出格是面向 Web 应用措施和 Spring Boot。正
副问题[/!--empirenews.page--]

Spring 可以说是最风行的 Java 框架之一,也是一只必要顺从的强盛野兽。固然它的根基观念相等轻易把握,但成为一名强盛的 Spring 开拓者仍必要许多时刻和全力。

行使 Spring Framework 时常犯的十大错误

在本文中,我们将先容 Spring 中一些常见的错误,出格是面向 Web 应用措施和 Spring Boot。正如 Spring Boot 官网 所说,Spring Boot 对应该怎样构建 Production-Ready 的应用保持着 相等坚强的概念,本文将实行仿照这种概念,并提供一些能力的概述,这些能力将很好地融入尺度 Spring Boot 的 web 应用措施开拓中去。

假如你对 Spring Boot 还不是很认识,但仍想实行下接下来提到的一些内容,我也为本文建设了一个 GitHub 客栈。假如你在阅读进程中感想狐疑,我提议把代码 clone 下来,并在当地电脑上行使这些代码。

1. 常见错误一:过分存眷底层

我们正在办理这个常见错误,是由于 “非我所创” 综合症在软件开拓规模极端常见。症状包罗常常重写一些常见的代码,许多开拓职员都有这种症状。

固然领略特定库的内部布局及着实现,在很洪流平上是好的而且很有须要的(也可所以一个很好的进修进程),但作为软件工程师,不绝地处理赏罚沟通的底层实现细节对小我私人的开产生活是有害的。像 Spring 这种抽象框架的存在是有缘故起因的,它将你从一再地手工劳作中解放出来,并应承你专注于更高条理的细节 —— 规模工具和营业逻辑。

因此,接管抽象。下次面临特定题目时,起首举办快速搜刮,确定办理该题目的库是否已被集成到 Spring 中;此刻,你也许找到一个吻合的现成办理方案。好比,一个很有效的库,在本文的其他部门,我将在示例中行使 Project Lombok 注解。Lombok 被用作样板代码天生器,但愿懒惰的开拓职员在认识这个库时不会碰着题目。举个例子,看看行使 Lombok 的 “尺度 Java Bean” 是什么样子的:

  1. @Getter 
  2. @Setter 
  3. @NoArgsConstructor 
  4. public class Bean implements Serializable { 
  5.  int firstBeanProperty; 
  6.  String secondBeanProperty; 
  7. }复制代码 

如你所想,上述代码被编译为:

  1. public class Bean implements Serializable { 
  2.  private int firstBeanProperty; 
  3.  private String secondBeanProperty; 
  4.  public int getFirstBeanProperty() { 
  5.  return this.firstBeanProperty; 
  6.  } 
  7.  public String getSecondBeanProperty() { 
  8.  return this.secondBeanProperty; 
  9.  } 
  10.  public void setFirstBeanProperty(int firstBeanProperty) { 
  11.  this.firstBeanProperty = firstBeanProperty; 
  12.  } 
  13.  public void setSecondBeanProperty(String secondBeanProperty) { 
  14.  this.secondBeanProperty = secondBeanProperty; 
  15.  } 
  16.  public Bean() { 
  17.  } 
  18. }复制代码 

可是,请留意,假如你规划在 IDE 中行使 Lombok,很也许必要安装一个插件,可在 此处 找到 Intellij IDEA 版本的插件。

2. 常见错误二:内部布局 “泄漏”

果真你的内部布局,从来都不是一个好主意,由于它在处事计划中造成了不机动性,从而促进了欠好的编码实践。“泄漏” 的内部机制示意为使数据库布局可以从某些 API 端点会见。譬喻,下面的 POJO(“Plain Old Java Object”)类暗示数据库中的一个表:

  1. @Entity 
  2. @NoArgsConstructor 
  3. @Getter 
  4. public class TopTalentEntity { 
  5.  @Id 
  6.  @GeneratedValue 
  7.  private Integer id; 
  8.  @Column 
  9.  private String name; 
  10.  public TopTalentEntity(String name) { 
  11.  this.name = name; 
  12.  } 
  13. }复制代码 

假设,存在一个端点,他必要会见 TopTalentEntity 数据。返回 TopTalentEntity 实例也许很诱人,但更机动的办理方案是建设一个新的类来暗示 API 端点上的 TopTalentEntity 数据。

  1. @AllArgsConstructor 
  2. @NoArgsConstructor 
  3. @Getter 
  4. public class TopTalentData { 
  5.  private String name; 
  6. }复制代码 

这样,对数据库后端举办变动将不必要在处事层举办任何特另外变动。思量下,在 TopTalentEntity 中添加一个 “password” 字段来存储数据库顶用户暗码的 Hash 值 —— 假如没有 TopTalentData 之类的毗连器,健忘变动处事前端,将会心外地袒露一些不须要的奥秘信息。

3. 常见错误三:缺乏存眷点疏散

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读