加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

java – Spring:@PostConstruct未被调用

发布时间:2020-12-15 01:31:02 所属栏目:大数据 来源:网络整理
导读:A类: package myproject.web.factory.components;@Componentpublic class AppComponentFactory{} B级 package myproject.web.components;import myproject.web.factory.components.AppComponentFactory;@Componentpublic class AdminTabSheet{ @Autowired p

A类:

package myproject.web.factory.components;

@Component
public class AppComponentFactory{
}

B级

package myproject.web.components;
import myproject.web.factory.components.AppComponentFactory;

@Component
public class AdminTabSheet{

   @Autowired
   private AppComponentFactory appComponentFactory;

   public AdminTabSheet() {
   }

   @PostConstruct
   public void init() {
      // does something with appComponentFactory
   }
}

配置XML:

WebConfig.java:

package myproject.spring.config;

@Configuration
@ComponentScan(basePackages = { "myproject.web.components"})
public class WebConfig {

我遵守了http://docs.oracle.com/javaee/5/api/javax/annotation/PostConstruct.html中的所有规则:

>只能使用此批注对一个方法进行批注.
>除EJB拦截器外,该方法不能有任何参数
>方法的返回类型必须为void.
>该方法绝不能抛出已检查的异常.
>应用PostConstruct的方法可以是public,protected,package private或private.
>方法绝不能是静态的.

有任何想法吗?

最佳答案
如果没有拼写错误,我相信这是正确的

@ComponentScan(basePackages = { "myproject.web"})

因为AppComponentFactory在myproject.web.factory包中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读