study ioc
create factory for dao