在這一刻,我有兩個類:UserHibernateDao
和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));
}
}
和第二:
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);
}
}
我看到兩個類都包含幾乎相等的方法和方法實現。
我想,這不是很好。 你覺得呢?或者這是正常的?
模板,也許? – m0skit0
閱讀[Java Generics](http://en.wikipedia.org/wiki/Generics_in_Java) –
在第二個代碼示例中是否應該有2個'public void save(Ticket ticket)'? – Sign