public boolean load() {
        String fileName = null;
        try {
            fileName = this.configFilePath();
            String jsonString = MixAll.file2String(fileName);

            if (null == jsonString || jsonString.length() == 0) {
                return this.loadBak();
            } else {
                this.decode(jsonString);
                log.info("load " + fileName + " OK");
                return true;
            }
        } catch (Exception e) {
            log.error("load " + fileName + " failed, and try to load backup file", e);
            return this.loadBak();
        }
    }
@Test
    public void testLoad() throws Exception {
        ConfigManager testConfigManager = buildTestConfigManager();
        File file = createAndWriteFile(testConfigManager.configFilePath());
        assertTrue(testConfigManager.load());
        file.delete();
        File fileBak = createAndWriteFile(testConfigManager.configFilePath() + ".bak");
        assertTrue(testConfigManager.load());
        fileBak.delete();
    }