📄 daofactory.java
字号:
package com.stuman.util;
import com.stuman.dao.AdminDAO;
import com.stuman.dao.ClassesDAO;
import com.stuman.dao.CourseDAO;
import com.stuman.dao.EnrolDAO;
import com.stuman.dao.StudentDAO;
import com.stuman.dao.TeacherDAO;
public abstract class DAOFactory {
private static Object initLock = new Object();
private static String className = "com.stuman.dao.imp.HibernateDAOFactory";
private static DAOFactory factory = null;
public static DAOFactory getInstance() {
if (factory == null) {
synchronized (initLock) {
if (factory == null) {
// Note, the software license expressely forbids
// tampering with this check.
// LicenseManager.validateLicense("Jive Forums Basic",
// "2.0");
String classNameProp = DAOConfig
.getProperty("DAOFactory.className");
if (classNameProp != null) {
className = classNameProp;
}
try {
// Load the class and create an instance.
Class c = Class.forName(className);
factory = (DAOFactory) c.newInstance();
} catch (Exception e) {
System.err.println("Failed to load DAOFactory class "
+ className
+ ". StuMan cannot function normally.");
e.printStackTrace();
return null;
}
}
}
}
return factory;
}
public abstract StudentDAO createStudentDAO();
public abstract TeacherDAO createTeacherDAO();
public abstract AdminDAO createAdminDAO();
public abstract CourseDAO createCourseDAO();
public abstract ClassesDAO createClassesDAO();
public abstract EnrolDAO createEnrolDAO();
static {
try {
Class c = Class.forName(className);
factory = (DAOFactory) c.newInstance();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -