as a map Map<String,Object> customerMap = persist.readMap("select * from customer where id=?", 10); // Fetch all customers and result the results as Map instances in a List List<Map<String,Object>> customerMapList = persist.readMapList("select * from customer"); // Fetch all customers and assign the ResultSet to an Iterator which maps rows to Map instances Iterator allCustomersIterator = persist.readMapIterator("select * from customer"); Java primitive types If a query returns a single column, Persist can map data directly into primitive types (either single values or lists): // Return customer name as String String name = persist.read(String.class, "select name from customer where id=?", 55); // Fetch all customer id's as a list of integers List<Integer> ids = persist.readList(Integer.class, "select id from customer"); Custom queries with no returning data Arbitrary queries that return no data can be easily executed. // Execute arbitrary SQL with parameters persist.executeUpdate("delete from customer where id in (?,?)", 10, 20); See also Hibernate iBATIS External links Persist @ GitHub Java (programming language) Articles with example Java code