spring 中自定义工具类 @Autowired引入service或者mapper为null

在SMM项目中,经常使用@Autowired引入service或者mapper,但是在自定的utils包下引入service或者mapper的时候,会出现null的情况,下面就来解决这个问题。
首先,我们在spring的配置文件中加上 扫描utils工具类的配置

<context:component-scan base-package="com.ocean.service,com.ocean.utils"></context:component-scan>

接下来在就是在这个工具类中的实现了,需要使用 @PostConstruct注解。
@PostConstruct注解的方法将会在依赖注入完成后被自动调用,指的是在项目启动的时候执行这个方法,也可以理解为在spring容器启动的时候执行

@Component
public class SearchNoUtils {
	@Autowired
	private static StdNewSeachService stdNewSeachService;
	private static SearchNoUtils searchNoUtils;

	 @PostConstruct
	    public void init() {    
		 searchNoUtils = this;
	    } 

	public StringBuffer makeNo(){
		//业务逻辑的处理
		searchNoUtils.stdNewSeachService.findXXX();
		//....
	}	
}

猜你喜欢

转载自blog.csdn.net/admin_mvip/article/details/84990143