Class DbUnitFlatXmlReader

java.lang.Object
com.reallifedeveloper.tools.test.database.dbunit.DbUnitFlatXmlReader

public final class DbUnitFlatXmlReader extends Object
A class to read a DBUnit flat XML dataset file and populate a Spring Data CrudRepository using the information in the file.

This is useful for testing in-memory repositories using the same test cases as for real repository implementations, and also for populating in-memory repositories for testing services, without having to use a real database.

Author:
RealLifeDeveloper
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new DbUnitFlatXmlReader.
  • Method Summary

    Modifier and Type
    Method
    Description
    <T, E, ID extends Serializable>
    void
    read(String resourceName, org.springframework.data.repository.CrudRepository<T,ID> repository, Class<T> repositoryEntityType, Class<E> entityType)
    Reads a DBUnit flat XML file from the named resource, populating the given repository with entities of the given type.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DbUnitFlatXmlReader

      public DbUnitFlatXmlReader()
      Creates a new DbUnitFlatXmlReader.
  • Method Details

    • read

      public <T, E, ID extends Serializable> void read(String resourceName, org.springframework.data.repository.CrudRepository<T,ID> repository, Class<T> repositoryEntityType, Class<E> entityType) throws IOException, SAXException
      Reads a DBUnit flat XML file from the named resource, populating the given repository with entities of the given type.
      Type Parameters:
      T - the type of entities in the repository
      E - the type of entity being created
      ID - the type of the primary key of the entities in the repository
      Parameters:
      resourceName - the classpath resource containing a DBUnit flat XML document
      repository - the repository to populate with the entities from the XML document
      repositoryEntityType - the class object representing <T>, i.e., the class of the entities in the repository
      entityType - the class object representing <E>, i.e., the class of the eneity being created
      Throws:
      IOException - if reading the file failed
      SAXException - if parsing the file failed