SpringBoot @Autowired用在static上
在SpringBoot开发中,有时候我们可能会需要把一个静态的bean标记为@Autowired来让Spring帮我们注入
但是在直接使用中,Spring是无法注入这个类的,奇怪的是Spring不把这种使用方法视为错误,没有任何的提示
先分析原因,在java中要使用到一个类的时候,是由类加载器来加载这个类的
在类加载器加载这个类的时候,类加载器就会分析这个类中的静态成员然后创建并初始化
在SpringBoot开发中,有时候我们可能会需要把一个静态的bean标记为@Autowired来让Spring帮我们注入
但是在直接使用中,Spring是无法注入这个类的,奇怪的是Spring不把这种使用方法视为错误,没有任何的提示
先分析原因,在java中要使用到一个类的时候,是由类加载器来加载这个类的
在类加载器加载这个类的时候,类加载器就会分析这个类中的静态成员然后创建并初始化
为了搞开发方便,我在windows下的Hyper-V安装了一个centos用来当做测试环境,每次写好代码后都会丢到linux下测试一下
然而每次都要从windows复制到linux下太麻烦了
而且沙雕的hyper-v界面不能粘贴命令,不能显示中文,还不如ssh方便
于是我想有一个目录,windows和linux同时能访问,这样只需要在linux部署好,windows直接修改目录下的项目,linux直接访问就行了
步骤如下
上一篇文章在Hyper-V下搭建了NAT模式的网络结构,解决了虚拟机的网络问题以及物理机和虚拟机的相对网络路径问题
但是问题来了
NAT是通过物理网卡共享连接外部网络,而直接使用外部网络的是物理机
但是我虚拟机有个端口,想对外部网络开放访问怎么办