vivismiledddd 2015-04-21 14:02 采纳率: 0%
浏览 3537

spring @Autowired service dao装配顺序?

代码结构如下:
@Controller
public class MyController{

@Autowired
private MyService service;

}

@Service
public class MyService{

@Autowired
private MyFirstDao myFirstDao;

public void check(Integer id) {
    //调用baseDao中基本的查询entity的方法
    myFirstDao.find(id);//此处myFirstDao==null 为什么??
}

}

@Repository
public class MyFirstDao extends BaseDao{//FirstEntity extends BaseEntity

}

@Repository
public class MySecondDao extends BaseDao{//SecondEntity extends BaseEntity

}

public class BaseDao{

//实现基本的增删改查
public void find(){}

public void del(){}

public void add(){}

}

按照我的理解,在初始化controller时会自动注入service(即完成service的初始化并获一个实例对象),同时因为service中有用@Autowired标注MyFirstDao ,因此会同时给serivce注入myFirstDao才对,为什么myFirstDao没注入成功呢?获取到的dao为null。

此种场景下,要调用基本的baseDao中的查询方法应该如何解决呢?

注: 其他xml中的配置都没问题。

急求解答。初学者对spring机制不是特别熟悉。

  • 写回答

1条回答 默认 最新

  • Evankaka 博客专家认证 2015-04-21 15:04
    关注

    看service是不是为null

    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站