public class User {
private String name;
private String pwd;
public String getName() {
return name;
}
public String getPwd() {
return pwd;
}
public void setName(String name) {
this.name = name;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
public class Role {
private String name;
private String pwd;
public String getName() {
return name;
}
public String getPwd() {
return pwd;
}
public void setName(String name) {
this.name = name;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
public class Product {
private String name;
private String pwd;
public String getName() {
return name;
}
public String getPwd() {
return pwd;
}
public void setName(String name) {
this.name = name;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
創(chuàng)建操作抽象類Dao
public interface IRoleDao {
void add(Role role);
void remove(Role role);
Role getUser(String role);
}
創(chuàng)建Dao的具體實現(xiàn)類
public class MySqlRoleDao implements IRoleDao {
@Override
public void add(Role role) {
}
@Override
public void remove(Role role) {
}
@Override
public Role getUser(String name) {
Role role=new Role();
role.setName(name);
return role;
}
}
public class SqlServiceRoleDao implements IRoleDao {
@Override
public void add(Role role) {
}
@Override
public void remove(Role role) {
}
@Override
public Role getUser(String name) {
Role role=new Role();
role.setName(name);
return role;
}
}
public class MySqlDaoFactory implements IDaoFactory {
@Override
public IUserDao createUserDao() {
return new MySqlUserDao();
}
@Override
public IRoleDao createRoleDao() {
return new MySqlRoleDao();
}
@Override
public IProductDao createProductDao() {
return new MySqlProductDao();
}
}
public class SqlServiceDaoFactory implements IDaoFactory {
@Override
public IUserDao createUserDao() {
return new SqlServiceUserDao();
}
@Override
public IRoleDao createRoleDao() {
return new SqlServiceRoleDao();
}
@Override
public IProductDao createProductDao() {
return new SqlServiceProductDao();
}
}
客戶端調(diào)用
IRoleDao roleDao = new SqlServiceDaoFactory().createRoleDao();
Role role = roleDao.getUser("抽象工廠方法");
tv_text.setText(role.getName());