add abstract dao
add abstract dao