configuration.setProperty(AvailableSettings.URL, url.replace("{db-host}", "localhost"));
configuration.setProperty(AvailableSettings.DIALECT, MySQLDialect.class.getName());
configuration.setProperty(AvailableSettings.USE_QUERY_CACHE, "false");
configuration.setProperty(AvailableSettings.SHOW_SQL, "false");
configuration.setProperty(AvailableSettings.CURRENT_SESSION_CONTEXT_CLASS, "thread");
configuration.addAnnotatedClass(World.class);
StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
return configuration.buildSessionFactory(serviceRegistryBuilder.build());
} catch (RuntimeException ex) {
LOGGER.error("Failed to create session factory");
throw ex;