- 创建user Role Product类
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;
}
}
- 创建操作抽象类Dao
public interface IRoleDao {
void add(Role role);
void remove(Role role);
Role getUser(String role);
}
- 创建Dao的具体实现类
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 interface IDaoFactory {
IUserDao createUserDao();
IRoleDao createRoleDao();
IProductDao createProductDao();
}
- 创建工厂方法的具体实现类
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();
}
}
- 客户端调用
IRoleDao roleDao = new SqlServiceDaoFactory().createRoleDao();
Role role = roleDao.getUser("抽象工厂方法");
tv_text.setText(role.getName());
网友评论