JSON 命名标准是否应该要求重命名数据库结果中的所有内容?

问题描述 投票:0回答:1

我使用

camelCase
作为键的 JSON 命名约定(就像其他许多人一样,例如 Google)。如果我要创建一个新对象并以 JSON 形式发送到客户端,这很好。

然而,有些数据来自数据库,该数据库返回包含数百个

key:value
对的记录。然后将它们发送给客户,例如
return res.status(200).json(DBData);

数据库中的记录全部以小写形式显示。所以我最终得到:

{
   userid: 1234,
   shortdesc: "I am a bot",
   longdesc: "I am a robot with OS level 1.1",
   addressline1: "5 Belvadier Heights",
   addressline2: "Southampshire"
   towncity: "London"
   ...
}

为了遵循命名约定,我必须在路由器中编写一个函数来手动将所有内容重命名为驼峰命名法(因为你如何告诉它在哪里更改大小写?):

 {
    userID: 1234,
    shortDesc: "I am a bot",
    longDesc: "I am a robot with OS level 1.1",
    addressLine1: "5 Belvadier Heights",
    addressLine2: "Southampshire"
    townCity: "London"
    ...
 }

我真的必须这样做吗?或者有更好/不同的方法吗?请记住,我以前没有在团队/组织环境中工作过,所以不想给任何人带来麻烦。

json naming-conventions naming
1个回答
0
投票

有几种方法可以解决这个问题。如果你使用的是springboot + mybatis。

mybatis:
  mapper-locations: classpath:mapper/*.xml
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: true
使用 map-underscore-to-camel-case: true 是自动化映射过程的有效方法,可以节省您编写额外代码来转换键的精力。

如果您不使用此堆栈,则可以使用“lodash”库。

© www.soinside.com 2019 - 2024. All rights reserved.