grpc 简单实例补充

消费mq配置  spring-rabbitmq-message.xml 





    

    
    
    

    

    

    
    

    
    
    

    
    
    
        
            
            
            
        
    

    

    
    
        
        
    

启动main方法 

@Service
public class RunMain {

    public RunMain() throws Exception {
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    Class clazz = Class.forName("com.grpc.service.ConsumerService");
                    Object obj =  clazz.newInstance();
                    Method mainMethod  =  clazz.getMethod("main", String[].class);
                    mainMethod.invoke(obj,  (Object)new String[]{});
                } catch (Exception e) {
                    e.printStackTrace();
                }

            }
        }).start();

    }
}

注入类方法

@Component
public class SpringContextUtil implements ApplicationContextAware {


    private static ApplicationContext applicationContext;

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

    public static ApplicationContext getApplicationContext() {
        return applicationContext;
    }


    public static Object getBeanById(String id){
        return applicationContext.getBean(id);
    }


    public static Object getBeanByClass(Class c){
        return applicationContext.getBean(c);
    }

    public static Map getBeansByClass(Class c){
        return applicationContext.getBeansOfType(c);
    }



}

 

你可能感兴趣的:(netty)