spring boot 中在@Component组件中service 无法注入问题

一、知识点

* @controller 控制器(注入服务):用于标注控制层,相当于struts中的action层;
* @service 服务(注入dao):用于标注服务层,主要用来进行业务的逻辑处理;
* @repository(实现dao访问):用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件;
* @component (把普通pojo实例化到spring容器中,相当于配置文件中的)
:泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。
二、.解决方式见截图:



三、@Value 在该组件中也是无法注入的,解决方式如下:
String appUuid = PropsUtil.get("auth.appId");
PropsUtil工具类如下:
import java.io.IOException; import java.io.InputStream; import
java.io.InputStreamReader;import java.util.Properties; /** * Created by rqt on
2018/3/27. */ public class PropsUtil { private static Properties props = new
Properties();private static InputStream isp =
PropsUtil.class.getClassLoader().getResourceAsStream("application.properties");
public static String get(String arg) { try { props.load(new
InputStreamReader(isp,"utf-8")); } catch (IOException e) { e.printStackTrace();
} String result = props.getProperty(arg);return result; } public static String
get(String arg, String arg2) { try { props.load(new InputStreamReader(isp,
"utf-8")); } catch (IOException e) { e.printStackTrace(); } String result =
props.getProperty(arg) + props.getProperty(arg2);return result; } public static
StringgetNoE(String arg) { try { props.load(new InputStreamReader(isp, "utf-8"
)); }catch (IOException e) { e.printStackTrace(); } String result =
props.getProperty(arg);return result; } }