您的位置:首页 > 其它

6、业务隔离(工厂设计模式)

2014-08-07 12:35 344 查看
一、接口

public interface UserEngine {

Message login(User user);

Message getBalance(User user);

Message bet(User user);

}

二、接口实现类

public class UserEngineImpl extends BaseEngine implements UserEngine {

public Message login(User user) {//。。。。。。}

public Message login1(User user) {//。。。。。。}

public Message getBalance(User user) {//。。。。。。}

public Message bet(User user)  {//。。。。。。}

}

三、src/目录下 bean.properties  属性配置文件中

UserEngine=com.ithm.lotteryhm28.engine.impl.UserEngineImpl       (接口名=实现类名)

四、工厂类中

public class BeanFactory {
// 依据配置文件加载实例

private static Properties properties;
static{
properties=new Properties();
// bean.properties必须在src的跟目录下
try {
properties.load(BeanFactory.class.getClassLoader().getResourceAsStream("bean.properties"));
} catch (IOException e) {
e.printStackTrace();
}
}

/**
 * 加载需要的实现类
 * @param clazz
 * @return
 */
public static<T> T getImpl(Class<T> clazz)
{
String key=clazz.getSimpleName();    //clazz.getName()
String className = properties.getProperty(key);
try {
return (T) Class.forName(className).newInstance();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

}

五、Activities中

UserEngine engine = BeanFactory.getImpl(UserEngine.class);

User user = new User();
user.setUsername("13200000000");
user.setPassword("0000000");
Message login = engine.login(user);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  工厂设计模式