1. Если методы не нужны - не нужно их добавлять в интерфейс, тем более реализовывать.
2. Нужно в интерфейсе UserDAO объявить, а затем реализовать нужный метод.
3. В
SOLID буква I - это "interface segregation principle" - несколько маленьких специализированных интерфейсов лучше, чем один большой.