zoukankan      html  css  js  c++  java
  • 解决spring boot中普通类中使用service为null 的方法

    我使用的是springboot+mybatisplus +mysql
    1.创建一个SpringUtil工具类

    import org.springframework.beans.BeansException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    public final class SpringUtil implements ApplicationContextAware {
        private static ApplicationContext applicationContext = null;
        @Override
        public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
            // TODO Auto-generated method stub
            if (SpringUtil.applicationContext == null) {
                SpringUtil.applicationContext = applicationContext;
                System.out.println("=============================================="+
                        "========ApplicationContext配置成功,在普通类可以通过调用ToolSpring.getAppContext()获取applicationContext对象,applicationContext="
                                + applicationContext + "==========");
            }
        }
        public static ApplicationContext getApplicationContext() {
            return applicationContext;
        }
        //通过类名称获取Bean.
        public static Object getBean(String name) {
            return getApplicationContext().getBean(name);
        }
        //通过class获取Bean.
        public static <T> T getBean(Class<T> clazz){
            return getApplicationContext().getBean(clazz);
        }
    }

    2.在启动类上面添加注解

    @Import(SpringUtil.class)
    依赖 import org.springframework.context.annotation.Import;

    3.在普通类中使用SpringUtil创建service类
     

      TestService testService = (TestService )SpringUtil.getBean(TestService.class);
      testService.save(testEntity);


    这里强转了一下,我试了下不强转也没问题
    此时就可以使用testService里的方法来和数据库交互了

  • 相关阅读:
    Android 锁屏 临时屏蔽
    单编译framework相关模块
    02
    pad 强制加载 Hdpi资源 (2.3 dpi < 240)
    设置form的默认按钮
    How to Be a Good Graduate Student
    我怕你们急于求成
    希腊字母读音表
    数据库札记(二)
    Ubuntu 9.04下jdk的安装与配置
  • 原文地址:https://www.cnblogs.com/baobeiqi-e/p/11857245.html
Copyright © 2011-2022 走看看