At this moment, I have two classes: UserHibernateDao and TicketHibernateDao :
import java.util.List; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import model.dao.Dao; import model.entity.User; public class UserDaoHibernate extends HibernateDaoSupport implements Dao<User> { public User get(long id) { return getHibernateTemplate().get(User.class, id); } public void save(User user) { getHibernateTemplate().save(user); } public void remove(long id) { getHibernateTemplate().delete( getHibernateTemplate().get(User.class, id)); } }
and second:
import java.util.List; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import model.dao.Dao; import model.entity.Ticket; public class TicketDaoHibernate extends HibernateDaoSupport implements Dao<Ticket> { public Ticket get(long id) { return getHibernateTemplate().get(Ticket.class, id); } public void save(Ticket ticket) { getHibernateTemplate().save(ticket); } public void remove(long id) { getHibernateTemplate().delete( getHibernateTemplate().get(Ticket.class, id)); } public void save(Ticket ticket) { getHibernateTemplate().saveOrUpdate(ticket); } }
I see that both classes contain almost equal methods and method implementations.
I think this is not very good. What do you think? Or is this normal?
source share