在Spring中如何配置泛型DAO

平时在项目中对每个表都得写一个Dao,我用的是hibernate的HibernateDaoSupport,如果写一个父Dao把insert,update,delete等等方法都放进去的话,其他Dao都继承父Dao的话,可以大大减少代码量,但是我不想让让参数或返回值是Object的,这样在代码中还得强制类型转换,很麻烦,所以想写个泛型Dao,例如:
父Dao接口:
public interface IBaseDao {

public void insert(T t);

public List select();
}
父Dao实现类:

public class BaseDao extends HibernateDaoSupport implements IBaseDao {

public void insert(T t) {
// TODO Auto-generated method stub
}

public List select() {
// TODO Auto-generated method stub
return null;
}

}
UserDao接口IUserDao
public interface IUserDao extends IBaseDao {

}

UserDao实现类:
public class UserDao extends BaseDao {

}

这样我IUserDao,UserDao中就不用写任何代码,只需要把自己私有的功能方法写在里面了,我想问的是我这样做的话,Spring bean应该怎么配置Dao啊,和配置普通的Dao有什么区别,就是怎么把UserDao配置到Spring中,在Manager中可以用IUserDao直接接收....

接上面,上面的UserDao有点错误,应该是这样的
UserDao
public class UserDao extends BaseDao implements IUserDao{

}