zoukankan      html  css  js  c++  java
  • java定时器无法自动注入的问题解析(原来Spring定时器可以这样注入service)

    近些日子在做一个项目,在项目中需要用到spring的定时任务,但是在操作数据库的时候发现总是不能正确的进行数据的插入,经过查看才发现:是因为service层不能够通过普通的方法注入到action,所以这样就不能够执行service层,进而执行数据库的操作。

    解决方法:这时需要配置一个service注入的工具类,代码如下:

    一、工具类

    public class ApplicationContextUtil implements ApplicationContextAware {  
            private static ApplicationContext applicationContext;  
    
            public static ApplicationContext getApplicationContext() {  
                return applicationContext;  
            }  
    
            public void setApplicationContext(ApplicationContext applicationContext) {  
                ApplicationContextUtil.applicationContext = applicationContext;  
            }  
    
            public static Object getBean(String beanName) {  
                return applicationContext.getBean(beanName);  
            }  
        }

    二、配置bean

    <bean  id ="applicationContextUtil"  class ="org.sihai.soil.util.ApplicationContextUtil" ></bean >

    三、定时器中通过ApplicationContextUtil类,获得service。

    realmEbi = (RealmEbi) ApplicationContextUtil.getBean("realmEbi");
            realmEbi.insertHour(RealmApplianceModel.sendData3);

    完美解决了,这样我们就可以获取到service对象进行相对应的业务处理,而不需要再创建jdbc来操作了。

    java学习群669823128

  • 相关阅读:
    webpack打包(2)
    webpack打包(1)
    angular(5自定义模块和ionic创建)
    angular(4)路由及其使用
    anjular(3 生命函数及请求)
    Angular(2)
    自学Angular(1)
    Typescript知识总结
    PLC数据采集与MES系统对接
    python格式化日期时间自动补0
  • 原文地址:https://www.cnblogs.com/rese-t/p/8321773.html
Copyright © 2011-2022 走看看