图片处理问题
来源:4-8 店铺注册功能之Controller层的改造
qq_总有刁民想害朕_70
2018-08-29
在ShopManageController类里面
//修改店铺信息 :我的代码
if(shop!=null && shop.getShopId()!=null){
ShopExecution se;
try{
if(shopImg==null){
se=shopService.modifyShop(shop, null);
}else{
se=shopService.modifyShop(shop, ImageUtil.transferCommonsMultipartFileToFile(shopImg));
}
老师的代码:
if (shop != null && shop.getShopId() != null) {
ShopExecution se;
try {
if (shopImg == null) {
se = shopService.modifyShop(shop, null);
} else {
ImageHolder imageHolder = new ImageHolder(shopImg.getOriginalFilename(), shopImg.getInputStream());
se = shopService.modifyShop(shop, imageHolder);
}
我觉得可以直接将CommonsMultipartFile转换成File,然后调用modifyShop()方法就好了,但是您是先转换成流,获取文件名字,最后调用方法,视频中为了这个问题还重构了一次代码,我有点不明白原因,请老师指点
1回答
-
翔仔
2018-08-29
同学好,如果直接弄成File的话,每次保存图片的时候会生成一个临时文件,所以才选择采用流的方式。并且为了能够让service层也能进行ut,所以才选择进行了一次代码的重构而不用CommonsMultipartFile,因为CommonsMultipartFile在Service里不好进行ut。传入不了文件
00
相似问题