docs: @Override
      public void initialize() {
          String adminUsername = "admin";
          String adminPassword = "123456";
  
          User param = new User();
          param.setUserName(adminUsername);
          User admin = baseDao.getUnique(User.class, param);
          if (admin != null) {
              LoggerHelper.info("database has been initialized.");
              return;
          }
          LoggerHelper.info("begin init database.");
          admin = new User();
          admin.setUserName(adminUsername);
          admin.setUserPassword(HashHelper.getHashedPassword(adminPassword, adminUsername));
          admin.setPasswordSalt(adminUsername);
  
          Role role = new Role();
          role.setRoleName("ROLE_ADMIN");
          role.setRoleDescription("Administrator");
          baseDao.save(role);
  
          admin.setRoleList(Arrays.asList(role));
          baseDao.save(admin);
  
          LoggerHelper.info("init database successfully.");
      }