如果我有一个带有静态方法的 util 类,它将调用 Hibernate 函数来完成基本的数据访问。我想知道使用 synchronized
方法是否是确保线程安全的正确方法。
我希望这样可以防止信息访问相同的数据库实例。但是,我现在可以肯定,如果下面的代码阻止 getObjectById
在被特定类调用时被调用到所有类。
public class Utils {
public static synchronized Object getObjectById (Class objclass, Long id) {
// call hibernate class
Session session = new Configuration().configure().buildSessionFactory().openSession();
Object obj = session.load(objclass, id);
session.close();
return obj;
}
// other static methods
}