首先,我知道最佳实践是在您的 Web 应用程序中使用单个数据库用户帐户,以利用连接池来保持应用程序良好且响应迅速。但是,由于要求(在任何情况下都不会更改),我必须使用他或她的数据库帐户对每个用户进行身份验证。
上下文是一个在 Android 上运行的仓库管理应用程序,但它的数据来自我可能会在 Grails 中编写的 Web 服务,除非这里的建议向我展示了更适合我要求的技术。由于应用程序的性质,用户可能只需要每天进行一次或两次身份验证,所以我想我可以简单地将连接保存在一个 HashMap 中,该 HashMap 由用户名的哈希码与密码连接。这应该允许应用程序保持与最佳实践相同或相似的性能水平。
现在,我的问题是使用持久的 Connection 对象。我知道如果没有大量定制,我将无法将它们与 GORM 一起使用,所以我计划将它们与 groovy.sql.Sql 一起使用,因为大部分业务逻辑都在 PL/SQL 包中,所以效果很好反正。
我的问题是 groovy.sql.Sql 类如何处理它的 Connection 对象?我会遇到连接被它关闭的问题,还是我可以安全地使用我的 HashMap 来持久化连接?