implement book dao