### Question:
DefaultRequeryEntityMetadata implements RequeryEntityMetadata<T> { @Nonnull @Override public String getEntityName() { Entity entity = AnnotatedElementUtils.findMergedAnnotation(domainClass, Entity.class); log.trace("Get entity name... domainClass={}, entity={}", domainClass.getName(), entity); return (entity != null) && StringUtils.hasText(entity.name()) ? entity.name() : domainClass.getSimpleName(); } DefaultRequeryEntityMetadata(@Nonnull Class<T> domainClass); @Nonnull static DefaultRequeryEntityMetadata<T> of(@Nonnull Class<T> domainClass); @Nonnull @Override String getEntityName(); @Override String getModelName(); @Override Class<T> getJavaType();  }### Answer:
@Test public void returnSimpleClassNameAsEntityNameByDefault() { DefaultRequeryEntityMetadata<Foo> metadata = new DefaultRequeryEntityMetadata<>(Foo.class); assertThat(metadata.getEntityName()).isEqualTo(Foo.class.getSimpleName()); }
@Test public void returnCustomizedEntityNameIfConfigured() { DefaultRequeryEntityMetadata<AbstractBasicUser> metadata = new DefaultRequeryEntityMetadata<>(AbstractBasicUser.class); assertThat(metadata.getEntityName()).isEqualTo("BasicUser"); }