什么是适合我使用 Kotlin 的需求的轻量级 ORM?
What is a good lightweight ORM for my need using Kotlin?
场景:
我有一个应用程序,我在其中使用用 Kotlin 编写的 AWS Lambdas 从驻留在 AWS 中的关系数据库查询数据。
--
我的问题是我想使用 ORM 来触发这些查询。我不想使用休眠,因为它太重而且设置时间太长,而且我需要一个解决方案,它可以在设置和从 Lambdas 启动时花费最少的时间。我看过多个 ORMS,如 Exposed、Requery、Jooq、Ktorm 和 Squash。
有人在无服务器环境中使用过这些库吗?你对他们有什么经验?你会建议在我的场景中使用什么?
我一直在为一些大型项目使用 Squash 和 Hikari 连接池,我对它非常满意。我喜欢它是非常可扩展的,我的团队已经能够解决出现的任何问题,实现方言的扩展和定义 TableDefinition 类 的简单性使其能够很好地生成代码。它也是非常独立的,几乎没有依赖关系并且反射很轻,所以应该对无服务器有好处,尽管我个人没有用过它。
Squash 与其说是一个 ORM,不如说是一个 sql 抽象/转换层,它与实体相关联,并且它不会像 hibernate 这样的东西那样尝试解决所有问题。根据我的经验,ORM 从简单、高效和强大的项目开始,然后发展成为试图做太多事情的重量级库,当开发人员无法轻易看到从使用到数据库的链中发生了什么时,它们的复杂性开始引起问题/存储机制。
关于 squash 的一个负面值得一提的是,虽然它是一个 jetlbrains 官方库并由 kotlin 开发人员创建,但支持有限,因为创建者 orangy 非常忙,而且我有未完成的功能拉取请求,目前有更多人支持。我之所以选择它,是因为我喜欢它的简单性和可扩展性,适合小型但高级的开发人员团队,他们都能够改进它。
你选择了哪个图书馆我希望这些因素至少能帮助你做出决定。
场景:
我有一个应用程序,我在其中使用用 Kotlin 编写的 AWS Lambdas 从驻留在 AWS 中的关系数据库查询数据。
--
我的问题是我想使用 ORM 来触发这些查询。我不想使用休眠,因为它太重而且设置时间太长,而且我需要一个解决方案,它可以在设置和从 Lambdas 启动时花费最少的时间。我看过多个 ORMS,如 Exposed、Requery、Jooq、Ktorm 和 Squash。
有人在无服务器环境中使用过这些库吗?你对他们有什么经验?你会建议在我的场景中使用什么?
我一直在为一些大型项目使用 Squash 和 Hikari 连接池,我对它非常满意。我喜欢它是非常可扩展的,我的团队已经能够解决出现的任何问题,实现方言的扩展和定义 TableDefinition 类 的简单性使其能够很好地生成代码。它也是非常独立的,几乎没有依赖关系并且反射很轻,所以应该对无服务器有好处,尽管我个人没有用过它。
Squash 与其说是一个 ORM,不如说是一个 sql 抽象/转换层,它与实体相关联,并且它不会像 hibernate 这样的东西那样尝试解决所有问题。根据我的经验,ORM 从简单、高效和强大的项目开始,然后发展成为试图做太多事情的重量级库,当开发人员无法轻易看到从使用到数据库的链中发生了什么时,它们的复杂性开始引起问题/存储机制。
关于 squash 的一个负面值得一提的是,虽然它是一个 jetlbrains 官方库并由 kotlin 开发人员创建,但支持有限,因为创建者 orangy 非常忙,而且我有未完成的功能拉取请求,目前有更多人支持。我之所以选择它,是因为我喜欢它的简单性和可扩展性,适合小型但高级的开发人员团队,他们都能够改进它。
你选择了哪个图书馆我希望这些因素至少能帮助你做出决定。