你好
我正在开发一个网站
我有一个类是与数据库的连接
该类包含一个从数据库写入和读取的方法
当前,该类为静态及其方法
我从这样的网页上调用课程:
//mydbClass is the name of the class , not an object
mydbClass.getUserName(userID)
问题是:
我是否需要创建一个类对象,以便每次用户请求页面时
创建一个新对象,并与数据库进行通信,如下所示:
mydbClass mydb = new mydbClass();
mydb.getUserName(userID)
因为如果我不创建新对象
因此,所有读取或写入数据库的用户
将使用相同的静态对象,那么它将非常繁忙,并且可能会崩溃
我很乐意回答
谢谢
米查
最佳答案
如果您想像静态类一样继续使用类,但要使用状态,则可以实现单例模式
http://en.wikipedia.org/wiki/Singleton_pattern
public class mydbClass{
private static mydbClass _current = new mydbClass();
public static mydbClass Current{
get{
return _current;
}
}
private mydbClass(){}
public User getUserName(userid){
//be sure to create a new connection each times
}
}
这样做的好处是,您可以在此类中简单地实现接口,打破依赖关系,然后对其进行模拟以进行测试。
无论如何,您始终必须在每次请求时都创建一个新连接,而不创建静态连接对象。