我们可以在Java独立应用程序(Swing)中实现Spring Autowiring

时间:2016-09-06 13:10:21

标签: java spring swing

我使用Java Swing创建了一个应用程序。现在,我想在此应用程序中集成Spring Autowiring(依赖注入)。

怀疑是创建UI(用户界面),我会使用“new”关键字,但要使用DAO和POJO类,我希望它们自动连线。

有人可以建议并帮助我。

1 个答案:

答案 0 :(得分:1)

不确定我是否理解你。我假设您要在UI类中自动装配DAO,服务等。但是为了做到这一点,这些UI类必须是Spring Beans本身。

您可以做的是在Spring应用程序上下文中创建每个UI类。为此,您可以创建以下类:

public class BeanProvider {

    private static ApplicationContext applicationContext;

    /**
     * Autowires the specified object in the spring context
     * 
     * @param object
     */
    public static void autowire(Object object) {
        applicationContext.getAutowireCapableBeanFactory().autowireBean(object);
    }

    @Autowired
    private void setApplicationContext(ApplicationContext applicationContext) {
        BeanProvider.applicationContext = applicationContext;
    }

}

然后在每个UI类的构造函数中:

public MyUiClass(){
BeanProvider.autowire(this);
}