refactoring
dao refactoring