设计模式之单例模式实际应用

在我理解中的单例模式是为了确保只有一个实例,所以唯一的实例化的对象会在采用单例模式的类里实例。


我使用单例模式的场景是我在系统内添加了一个xml文件,写了一个xmlLoader加载该xml,接着写一个util类获取加载好的xml的参数。这个时候要确保xmlLoader加载器只有一个,只加载此时的xml文件。


具体实现如下

Loader:

public class LoadValidatorXMLLoader {

private static List<Map<String,Object>> list = new ArrayList<>();

private static String filePath = SystemConstant.getRealPath() + "WEB-INF/classes/config/validator/SysValidator.xml";;

private static LoadValidatorXMLLoader instance = new LoadValidatorXMLLoader();

public static LoadValidatorXMLLoader init(){
return instance;
}
private LoadValidatorXMLLoader(){
loadXML();
}


@SuppressWarnings({ "unchecked", "rawtypes" })
private static void loadXML(){

}

}

util:

public class ValidatorUtil {
public static LoadValidatorXMLLoader loader = LoadValidatorXMLLoader.init();

public static ValidatorResultMessge validator(BaseBO bo,String key) throws Exception{
Map rootMap = loader.getMap(key);
return null;
}

}


以确保每一次调用util的时候加载的都是同一个loader。这就是我使用单例模式的应用场景。


接下来贴一部分网上找到的大神对单例模式的描述和具体代码的链接,虽然现在使用的还比较少,但十分具有参考价值。目前感觉自己对整个业务或者功能的描述太过多得使用日常的用语,描述出来不严谨,描述不清晰,希望能慢慢改正自己的缺点。


http://blog.csdn.net/jason0539/article/details/23297037/




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值