zoukankan      html  css  js  c++  java
  • SpringBoot在自定义类中调用service层等Spring其他层

    解决方案: 
    1.上代码
    
    @Component
    public class ServerHandler extends IoHandlerAdapter {
        @Autowired
        protected HealthDataService healthDataService;
        private static ServerHandler  serverHandler ;
        @PostConstruct //通过@PostConstruct实现初始化bean之前进行的操作
        public void init() {  
            serverHandler = this;  
            serverHandler.healthDataService = this.healthDataService;        
            // 初使化时将已静态化的testService实例化
        }  
        //测试调用
        public void test(){
            serverHandler .healthDataService.<你的service层方法>;
        }
    
    2.说明: 
    将需要调用Spring的Service层的类通过@Component注解为组件加载; 
    同样通过@Autowired获取Service层的Bean对象; 
    为类声明一个静态变量,方便下一步存储bean对象; 
    划重点:通过注解@PostConstruct ,在初始化的时候初始化静态对象和它的静态成员变量healthDataService,原理是拿到service层bean对象,静态存储下来,防止被释放。
    
    那些趟过的坑: 
    刚开始调用的时候,总觉得很简单,以前springmvc写个配置,将对象标注为bean就可以随意调用Spring IOC容器的beans了,但是这是SpringBoot,估计还是有区别,一次试验了百度出来的前三页帮助,基本没有成功的。包括: 
     1)将工具类申明为spring组件,如@controller @compent 等,在spring自动扫描包设置中将工具类所在的包加进来;  无效 
    2)new一个service;  无效; 
    等等!
    
    ---------------------
    
    本文来自 georgeshaw1 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/georgeshaw1/article/details/74943089?utm_source=copy 
    

      

  • 相关阅读:
    软件工程团队作业--详细设计说明书
    软件工程团队作业-详细设计阶段
    软件工程-架构设计成果物
    软件工程-架构设计阶段
    软件工程-需求分析成果物
    软件工程团队作业-需求分析阶段
    软件工程-编写调研提纲
    软件工程第四次作业
    软件工程第三次作业
    20199103 2019-2020-2 《网络攻防实践》期末大作业
  • 原文地址:https://www.cnblogs.com/yuefeng123/p/9700523.html
Copyright © 2011-2022 走看看