0
点赞
收藏
分享

微信扫一扫

解决工具类中使用@Component注解注入service为null

DYBOY 2022-09-06 阅读 50


package com.gblfy;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.PostConstruct;
import javax.servlet.jsp.tagext.PageData;

/**
* @author gblfy
* @ClassNme BaseCommon
*/
@Component//关键点 1 为spring组件
public class BaseCommon {

//添加所需mConfigParamService的私有成员
@Autowired
private ConfigParamService mConfigParamService;
// 关键点2 静态初使化 一个工具类 这样是为了在spring初使化之前
private static BaseCommon baseCommon;

//关键 3 通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作
@PostConstruct
public void init() {
baseCommon = this;
// 初使化时将已静态化的configParam实例化
baseCommon.mConfigParamService = this.mConfigParamService;
}

/**
*保存数据
* @param serviceName
* @throws Exception
*/
@Transactional
public void save(String serviceName) throws Exception {
//关键点 4 调用时请使用 此类静态变量 .对象 例如:baseCommon.configParam
baseCommon.mConfigParamService.save(serviceName);
System.out.println("返回参数" + params);
}
}


举报

相关推荐

0 条评论