它現在似乎沒有工作。我得到一個我可以在Spring中注入接口子類型嗎?
顯示java.lang.NullPointerException
我有一個實現接口的類
public class LearnerDao implements BaseDao {
private BaseDao dao;
public void setDao(BaseDao dao) {
this.dao=dao;
}
.
.
.
}
這是我的佈線
<bean id="pm" factory-bean="pmf" factory-method="getPersistenceManager"
scope="prototype"></bean>
<bean id="learnerDao" class="com.hardwire.dao.impl.LearnerDao">
<property name="pm" ref="pm"></property>
</bean>
<bean id="twitterUserDao" class="com.hardwire.dao.impl.TwitterUserDao">
<property name="pm" ref="pm"></property>
</bean>
<bean id="learnerService" class="com.hardwire.service.LearnerService">
<property name="dao" ref="learnerDao"></property
</bean>
這裏是我的learnerService
public class LearnerService {
private static final Logger log =
Logger.getLogger(LearnerService.class.getName());
private BaseDao dao;
.
.
.
public void insert(Learner learner){
if (dao==null){
log.info("dao is null");
}
else {
log.info("dao is not null");
}
dao.insert(learner);
}
public void setDao(BaseDao dao) {
this.dao = dao;
}
這只是學習者實現BaseDao的功能。另一方面,bean的twitterUserDao沒有。我想要注意的是,twitterUserDao注入剛好,但學習者Dao不是。 日誌顯示learnerDao爲空。所以我想知道這與學習者實施界面有什麼關係。
哎呀很抱歉,我已經在我的帖子中闡述了...... – Jeune 2009-09-05 08:21:39