After reading http://opensource.atlassian.com/confluence/oss/display/IBATIS/iBATIS+3.0+Whiteboard and the iBATIS v3 java code, I think:
MapperFactory.GetMapper<T> is intended to create proxies of Mapper interfaces. A mapper interface is a interface that defines data access methods for a specific data object type. Such as: public interface ICustomerMapper { IList<Customer> FindByName(String name); } The implementation of GetMapper<ICustomerMapper> will create a dynamic proxy that implements FindByName as to invoke IDataMapper.Select("ICustomer-FindByName", new Hashtable("name", nameValue)). The "ICustomer-FindByName" may be defined as something like: <select id="ICustomerMapper-FindByName" parameterClass="Hashtable">....</select>" On Mon, Jun 1, 2009 at 11:02 PM, Yaojian <sky...@gmail.com> wrote: > Another for session: > http://sites.google.com/site/ibatisnetinside/Home/session-management > > Error correction is warmly welcome. > > > On Mon, Jun 1, 2009 at 8:47 PM, Michael McCurrey <mmccur...@gmail.com>wrote: > >> AWESOME >> >> >> On Mon, Jun 1, 2009 at 5:08 AM, Yaojian <sky...@gmail.com> wrote: >> >>> I guess the original idea is allow a user to customize the IDataMapper >>> implementation class. >>> But the DefaultConfigurationEngine instantiate the DataMapper instance in >>> a non-virtual method. >>> >>> If we can add a DataMapperClass property in the ConfigurationSetting >>> class, such as the ConfigurationSetting.SessionFactory does, we can make >>> this work. >>> >>> By the way, I wrote some notes about the V3 configuration process: >>> >>> http://sites.google.com/site/ibatisnetinside/Home/DataMapperConfiguring >>> >>> >>> On Mon, Jun 1, 2009 at 7:24 PM, Michael McCurrey <mmccur...@gmail.com>wrote: >>> >>>> I have no clue. I'm still wresting with with large scale changes >>>> between 1 and 3. >>>> >>>> >>>> On Mon, Jun 1, 2009 at 1:19 AM, Yaojian <sky...@gmail.com> wrote: >>>> >>>>> The Apache.Ibatis.DataMapper.DefaultMapperFactory does not implement >>>>> the IMapperFactory.GetMapper<TInterface>(); >>>>> >>>>> so the only way AFAIK to get the IDataMapper is to use a type cast as: >>>>> >>>>> IMapperFactory mapperFactory = >>>>> configurationEngine.BuildMapperFactory(); >>>>> IDataMapper dataMapper = >>>>> ((IDataMapperAccessor)mapperFactory).DataMapper; //since GetInterface<T> >>>>> has not been implemented. >>>>> >>>>> Any one have idea about what the GetInterface<T> intend to be? >>>>> >>>> >>>> >>>> >>>> -- >>>> Michael J. McCurrey >>>> Read with me at http://www.mccurrey.com >>>> >>> >>> >> >> >> -- >> Michael J. McCurrey >> Read with me at http://www.mccurrey.com >> > >