spring-mvc非controller调用Service方法

用注解是不可以直接调用service里的方法,那咋办呢,就想用啊。
先创建一个类

public class ApplicationContextHelper implements ApplicationContextAware {
    
    private static ApplicationContext appCtx;

    @Override
    public void setApplicationContext( ApplicationContext applicationContext ) throws BeansException {
            appCtx = applicationContext;
            }

    public static Object getBean( String beanName ) {
            return appCtx.getBean( beanName );
            }

    public static <T> T getBean(Class<T> clz) {
            return (T)appCtx.getBean(clz);
            }
}

在spring.xml再配置一下

<bean id="SpringApplicationContext" class="com.ytdinfo.collectionplus.core.ApplicationContextHelper"></bean>

使用

SynonymService synonymService= ApplicationContextHelper.getBean(SynonymService.class);

推荐阅读更多精彩内容