【发布时间】:2015-03-23 05:18:12
【问题描述】:
您好,我正在尝试使用 dropwizard 框架创建应用程序。我有 DAO 类 impl,它需要连接管理器实例的句柄,然后将用于获取数据库连接。我有一个多租户数据库应用程序。此连接管理器将是自定义实现。
应用程序使用 hikari cp 作为连接池和 mysql 数据库。我想使用 dropwizard 托管对象功能初始化数据源和连接池。初始化数据源后,我想使用 guice 绑定之类的方式在每个 dao 类中注入连接管理器实例
bind(ConnectionManager.class).toProvider(ConnectionManagerProvider.class);
然后在每个 dao impl 类中
@Inject
public class UserDAOIpl extends AbstractDAO {
protected UserDAOImpl(ConnectionManager connectionManager) {
super(connectionManager);
}
}
我在网上到处都看过,我的用例没有特别的例子。 dropwirzard.io 也缺少文档
这更像是一个架构设计问题,而不是代码问题。
数据源模块将是一个单独的模块,可用于许多服务。我使用 maven 作为构建工具。
我的问题是
- 我该如何处理这种情况?一些类名和实现指南会非常有用。
- 应用程序每天将处理 50 万个请求。解决方案应该是可行的。
我期待社区的任何指导,或者是否有任何机构可以向我指出一些好的资源。
注意:我们不会为此应用程序使用休眠,而是使用 JDBI。
【问题讨论】:
-
这种方法是否解决了mysql的多租户问题?
标签: java mysql guice dropwizard