什么叫简单工程模式?
就是把复杂对象的创建过程抽离到一个工厂类中,也就是将逻辑集中到一块,防止逻辑变动时,需要多处修改。简单工厂模式在日常使用中并不一定显式的定义一个工厂类型,将逻辑集中的类和方法,都可以认为是使用了简单工厂模式的思想。
实际案列说明
在某次项目中,需要给操作员生成密码,开始只有在重置密码的时候使用该功能,所以没有使用工厂模式,后来又有了初始化密码的功能,且有多个使用场景,导致多处修改,如果是使用简单工厂模式的话,即可以避免该情况。代码如下:
/** * 操作员密码加密 * * @param password * @return */ public static String encryptPassword(String password) { //base编码 String encryptPassword = Base64Utils.encode(password.getBytes()); //md5 try { encryptPassword = Md5Utils.encryptMD5(encryptPassword); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } //sha1 String sha1Hex = DigestUtils.sha1Hex(encryptPassword); //SM3 return Sm3Utils.encrypt(sha1Hex, PUBConstants.SM3_KEY); }