returns an implementation of an interface. Creation of the DAO s comes later in
the createDao() method
when they are actually requested.
In this chapter, we wrapped up our exploration of the Data Access Object ( DAO )
pattern, and you learned how to use it with data access tools other than i BATIS
SqlMap s. You also saw how the DAO pattern could be used as a type of gateway pat-
tern, and how to adapt it to wrap not just typical data sources but also more
unusual sources of data, such as an LDAP directory or web service.
We explored some of the limitations of the i BATIS DAO framework in terms of
the creation of the DAO s that it provides. You saw how by using the Spring frame-
work it is possible to do almost anything to create and configure your DAO classes.
We also looked briefly at what would be required to build a custom DAO layer,
and even put together a very simple starter DAO factory.
At this point, you have seen all that comes with i BATIS . In the next chapter, you
will learn how you can extend the framework to do things beyond what is possible
through configuration only!