1、Spring框架中——@Value注解
1、初始版
@Value注解 只可以直接为基本类型赋值和String类型(为对象赋值用@Autowired)

问题: 如果像图中赋值,则耦合性依然很高,不通用. 需要优化!!!
2、优化版
对象中的属性一般都是业务数据,如果需要为业务数据赋值,则一般采用properties文件 更加灵活.
位置: 在resources目录下(注意,后期properties文件会被优化为yml文件,操作相同)
1、创建user.properties配置文件
2、写user.properties配置文件的内容
#1.注意事项: key=value 等号连接 2.中间不要添加多余的空格
#2.说明: windows系统中有环境变量username=系统用户名称,以后写业务数据时,最好绕开关键字username
#3.编码规则: 程序默认读取properties文件时,采用ISO-8859-1编码方式 出来的不是汉字
# 所以@PropertySource注解里要加上encoding = "UTF-8"
user.username=葫芦娃
#注意,原来写的名字是username,但是有bug,这样写获取的是计算机的用户名,所以我们可以加个前缀
#写成user.username(或者写成name)——只要不叫username怎么着都行
3、告知Spring容器有user.properties这么一个配置文件@PropertySource(value="classpath:/user.properties",encoding = "UTF-8")
并通过@Value(“${ }”)固定写法将配置文件中的值传过来
知识点:1、以后但凡看到了……Source(括号里起手写"classpath:/……")
classpath:/ 代表resources 文件 的根目录
2、编码规则: 程序默认读取properties文件时,采用ISO-8859-1编码方式
所以@PropertySource注解里要加上encoding = "UTF-8"
意思是读取时采用UTF-8方式读取
上图中可以写成@Value("${user.username:一号葫芦娃(设的默认值,若是配置文件中有,就会变成配置文件中的值;没有就会按照自己写的默认值来)}")