我需要一些设计建议。
这是我的用户故事:
作为用户,我想将我的工作时间保存到数据库中以供以后查看。我希望它很简单,只需在主屏幕上单击一个按钮即可。
我在我的应用程序中处理这个问题的方式是,从我的主要应用程序 fragment 中,当用户点击一个按钮时,它将调用一个工厂类,该工厂类将为此实例化正确的类(让我们调用 - 类“X”)类型的工作,并将其返回到主要 fragment 进行交互。
在类“X”构造函数中,我建立并打开了数据库连接,并在此类方法之一中将新数据插入到数据库中。
我的问题是 - 这是一个好的设计吗?我会有内存泄漏吗?有什么我需要考虑的吗?
我附上了类似 UML 的类流以寻求帮助:
+-----------------+ +----------------------+
|MainFragment | | Factory |
|-----------------| |----------------------|
| | | ChooseShiftObject |
| |+---------+----+ | |
| CheckIn() | | |
+-----------------+ | |
+----------------------+
+
|
|
+
|
+ +
+-----------------------+
| Shift |
|-----------------------|
| DB.Open() |
| DB.Insert(bla, bla. bla)
| DB.Close() |
| |
| |
| |
+-----------------------+
最佳答案
关于java - 设计——从哪里打开、插入和关闭数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14212255/