package com.iot.agchen.dao.impl;
import java.util.List;
import com.iot.agchen.bean.User;
import com.iot.agchen.dao.UserDao;
public class UserDaoImpl extends BaseDaoImpl implements UserDao {
@Override
public List list() {
String hql = " from User ";
return super.list(hql);
}
@Override
public void save(User u) {
super.save(u);
}
}
UserDao怎么实现的,它是怎么处理list save的方法的
你这啥也看不出来啊 ,, 抱错了还是咋了
很正常、好像没有问题。把报错地方贴出来,你的需求又是什么?想实现什么功能?
package com.iot.agchen.dao.impl;
import java.io.Serializable;
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.iot.agchen.dao.BaseDao;
public class BaseDaoImpl extends HibernateDaoSupport implements BaseDao {
//@Override
public void delete(Object obj) {
super.getHibernateTemplate().delete(obj);
}
//@Override
public Object get(Class cls, Serializable id) {
return super.getHibernateTemplate().get(cls, id);
}
//@Override
public List list(String hql) {
return super.getHibernateTemplate().find(hql);
}
//@Override
public void save(Object obj) {
super.getHibernateTemplate().save(obj);
}
//@Override
public void update(Object obj) {
super.getHibernateTemplate().update(obj);
}
}
package com.iot.agchen.dao;
import java.util.List;
import com.iot.agchen.bean.User;
public interface UserDao {
public void save(User u);
public List list();
}
package com.iot.agchen.dao.impl;
import java.util.List;
import com.iot.agchen.bean.User;
import com.iot.agchen.dao.UserDao;
public class UserDaoImpl extends BaseDaoImpl implements UserDao {
@Override
public List list() {
String hql = " from User ";
return super.list(hql);
}
@Override
public void save(User u) {
super.save(u);
}
}
起码要贴一下代码,这一段看不出来问题
UserDao是不是也继承了BaseDao??
在你继承和你实现的这两个类中都有save这个方法 你把名字改成不同的把
首先,UserDao是一个接口,BaseDaoImpl是个类,并不是抽象方法或者接口,那么你就必须实现接口中的所有抽象方法,如果是要在UserDaoImpl 中实现这两个方法
现在有两个解决的办法,第一是将BaseDaoImpl是个类变为抽象类,第二是UserDaoImpl直接实现UserDao接口,并同时继承BaseDaoImpl类