我想了解如果静态方法同时被多个线程访问,那么返回的数据会不一致吗?
DAO代码:
public Class SomeDAO{
private Static final SomeDAO someDAO = new SomeDAO();
private SomeDAO(){
}
private static SomeDAO getInstance(){
return someDAO ;
}
public Static String read(long ID) {
//connection code
// Prepare statement read method code here
//conn.close()
}
}
================================================ ==========
Class A{
SomeDAO someDAO = SomeDAO.getInstance();
someDAO.read(1);
}
===============================================================
Class B{
SomeDAO someDAO = SomeDAO.getInstance();
someDAO.read(2);
}
如果以上两个类同时调用someDAO.read(),响应是否会不一致?静态方法上是否发生任何锁定?否则,最好使用非静态DAO类并创建它的实例,然后从多个类中调用它的方法。 谢谢。