系統如果有很多dao,不想配置在xml中,想直接annotation.但是怎麼樣把JdbcTemplate注入進去了呢?@Resource(name="jdbcTemplate")
private JdbcTemplate jdbcTemplate;這樣注入不行,不知道為什麼?jdbcTemplate在xml中配置過

解决方案 »

  1.   

    annotation 不知道。应该和一般的依赖一样配置。。
      

  2.   

    自己定义父类public class MyDaoSupport extends JdbcDaoSupport {
         @Resource(name="...")
         protected void inject(JdbcTemplate jdbcTemplate) {
               super.setJdbcTemplate(jdbcTemplate);
         }
    }public SomeDaoImpl extends your.pack.age.MyDaoSupport implement SomeDao {
        ///   ....................
    } 就好了!不过不推荐用JdbcDaoSupport,你想用JdbcTemplate的话,注入不就完了吗。 这么啰嗦干什么。
      

  3.   

    就是不知道annotation可以在方法上用注入,所以才一直不成功嗎。
      

  4.   

    不是,关键问题是JdbcDaoSupport的setJdbcTemplate方法是final 类型的。这个很烦人。你无法继承它,当然也没有办法写标注啦。 所以用一个手法中间过渡一下。