1.定义接口类IDaoUser
public interface IDaoUser {
public String getSql_maxusrno();
}
2.定义工厂类,此工厂类实现了两个不同类的调用。
public final class DaoUserFactory {
public static IDaoUser getInstance(int dbtype)
{
switch (dbtype)
{
case 1: //for sqlserver
return new DaoUserForSqlServer();
case 2: //for oracle
return new DaoUserForOracle();
}
return null;
}
}
3、接口的实现,实现了接口IDaoUser的方法
public class DaoUser implements IDaoUser {
public String getSql_maxusrno() {
// TODO Auto-generated method stub
return "select max(to_number(usrno)) from data_user";
}
}
4、继承类的实现
工厂中如果选择case 2 则调用DaoUserForOracle 类
public class DaoUserForOracle extends DaoUser{
}
工厂中如果选择case 1 则调用DaoUserForSqlServer 类
public class DaoUserForSqlServer extends DaoUser {
}