autoincrement + abstract dao