-
用什么注解可以快速获取日志对象?
@Slf4j
-
文件上传前端表单必须具备哪三个要素?
- 表单必须有 file 域,用于选择要上传的文件。
- 表单提交方式必须为 POST。
- 表单的编码类型enctype必须要设置为 multipart/form-data。
-
文件上传功能开发时,后台用什么类型的参数来接收文件?
MultipartFile
MultipartFile 常见方法:
getOriginalFilename():获取原始文件名
getContentType():获取文件的类型
getInputStream():获取文件的输入流
transferTo(File dest) :将上传的文件保存到目标文件中(Mac中测试有问题,可以使用流获取数据拷贝方式)
getBytes():获取文件的字节数组 -
请说说你的图片存储方案是怎样的?
本地存储
缺点:
- 不安全:磁盘如果损坏,所有的文件就会丢失。
- 容量有限:如果存储大量的图片,磁盘空间有限(磁盘不可能无限制扩容)。
- 无法直接访问
云存储
yml配置文件
- accessKeyId:阿里云账号AccessKey
- accessKeySecret:阿里云账号AccessKey对应的秘钥
- bucketName:Bucket名称
- objectName:对象名称,在Bucket中存储的对象的名称
-
请说说你的员工修改是怎么实现的?
6.@Value,@ConfigurationProperties两个注解怎么用的
@Value注解,可以加载并读取配置文件中的配置项,具体形式为:@Value(“${key}”)
@Component
public class AliOSSUtils {
// private String endpoint = "区域名";
// private String accessKeyId = "阿里云账号AccessKey";
// private String accessKeySecret = "阿里云账号AccessKey对应的秘钥";
// private String bucketName = "Bucket名称";
@Value("${aliyun.oss.endpoint}")
private String endpoint;
@Value("${aliyun.oss.accessKeyId}")
private String accessKeyId;
@Value("${aliyun.oss.accessKeySecret}")
private String accessKeySecret;
@Value("${aliyun.oss.bucketName}")
private String bucketName;
//其他代码省略
}
@ConfigurationProperties: 定义实体类,用于封装需要注入的属性。
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Data
@Component
@ConfigurationProperties(prefix = "aliyun.oss") //指定配置文件
public class AliOSSProperties {
private String endpoint;
private String accessKeyId;
private String accessKeySecret;
private String bucketName;
}
7,配置文件有几种形式,常用的那种
Properties文件
xml
yml