我需要一个适合与数据库通信的设计模式。
我想要一个由软件的不同子系统用来与数据库通信的对象。该对象将在函数中包含所有 MySQL 查询。
例如:
class DatabaseController
{
getAllUsers()
{
// Access the Database and get all the UserNames.
}
findUserID(String id)
{
// Look in the User Table in MySQL database.
}
findItem(String itemName)
{
// Look in the item's table in MySQL database.
}
}
我在考虑一个单例,这样我就可以只提供一个到 DatabaseController 的入口点。
是否存在允许其他类与 DatabaseController 通信并具有与数据库通信设计的功能的高级设计模式?
例如,软件的不同部分会调用。
class ItemController
{
findItem(String itemName)
{
DatabaseController.findItem(itemName);
}
}
[编辑] 我正在寻找自己写的东西,可能是看教程,用 Java 写。