Xiao牛大犁 2015-01-22 13:20 采纳率: 0%
浏览 1844

郁闷+头疼!怎么都想不通,怎么就不会调用重写后的方法呢?在线等好心人回答

看代码
package dali.pigfriend.common.interfaces;
/**

    数据库信息管理业务接口。
    数据库信息管理逻辑
    @author Administrator * / public interface DateManageService { /*
    初始化数据包类属性
    @param datePack */ public void init(PageDatePack datePack);

/**

    查找数据
    @param datePack 查询参数封装在该对象中 */ public void search(PageDatePack datePack);

/**

    保存数据修改
    @param datePack */ public void save(PageDatePack datePack);

}

package dali.pigfriend.common.interfaces;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

@Service
public class BaseService implements DateManageService{

/**

    dao类,与数据库交互的dao类 */ @Autowired @Qualifier("baseDao") private DateManageDao datManDao;

public DateManageDao getDatManDao() {
return datManDao;
}

public void setDatManDao(DateManageDao datManDao) {
this.datManDao = datManDao;
}

@Override
public void init(PageDatePack datePack) {
// TODO Auto-generated method stub
System.out.println("BaseService.init()");
}

@Override
public void search(PageDatePack datePack) {
// TODO Auto-generated method stub

}

@Override
public void save(PageDatePack datePack) {
// TODO Auto-generated method stub

}

}

package dali.pigfriend.backstage.base.action;
import org.springframework.beans.factory.annotation.Autowired;

import dali.pigfriend.backstage.base.service.MenuManageService;
import dali.pigfriend.backstage.base.service.TestService;
import dali.pigfriend.common.interfaces.*;

public class MenuManageAction extends BaseAction{
/**
*
*/
@Autowired
public MenuManageAction(MenuManageService menuManageService){
System.out.println("构造MenuManageAction类++++++++++");
this.setDatManSer(menuManageService);
}
private static final long serialVersionUID = 1L;

@Autowired
private TestService testService;

@Override
public String managePage() {
// TODO Auto-generated method stub
this.testService.init();
//搞不懂的是下面这行代码,就是它为嘛不调用DateManageService子类的init方法,而是调用父类BaseService的init方法
this.getDatManSer().init(super.getDatePack());
return RESULT_MANAGE_PAGE;
}

}

package dali.pigfriend.backstage.base.service;
import org.springframework.stereotype.Service;

import dali.pigfriend.backstage.core.*;

@Service
public class MenuManageService extends BaseService{
public MenuManageService(){
System.out.println("创建MenuManageService实例!"+hashCode());
}

@Override
public void init(PageDatePack datePack) {
    // TODO Auto-generated method stub
    System.out.println("MenuManageService init function");
}

}

通过浏览器请求调用MenuManageAction动作类的managePage。
收起 
  • 写回答

2条回答 默认 最新

  • danielinbiti 2015-01-22 15:27
    关注

    看不出你提的问题中子类父类都指什么,像MenuManageService都是谁的子类,谁的父类

    评论

报告相同问题?

悬赏问题

  • ¥60 Python如何后台操作Vmwake虚拟机键鼠
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容