SpringMVC 框架完成图片上传到项目路径操作

本文介绍了一个使用Java处理文件上传并将其信息存入数据库的方法。具体步骤包括:判断上传文件是否存在,获取上传路径,创建路径(如不存在),获取原始文件名,对文件名进行处理以避免重名,将文件写入指定路径,最后更新数据库中对应记录。

/**
* 保存添加
*
* @return
*/
@RequestMapping(value = "taizhang/add.action", method = { RequestMethod.POST })
public String taizhangAdd(Equipment equipment, @RequestParam("photo") MultipartFile file,
HttpServletRequest request) {
// 添加图片
// 1.判断头像是否为空
String n = null;
if (file != null || file.equals("")) {
// 文件上传处理
// 1.获取上传路径
String str = request.getServletContext().getRealPath("//upload//equipViews");
// 2.如果该路径不存在,创建此路径
File path = new File(str);
if (!path.exists()) {
path.mkdirs();
}
// 3.获取名字 拼接路径
String name = file.getOriginalFilename();
n = name;
// 根据是否有name来判断是否有图片
/*
* if(name.equals("")){
*
* }
*/

// 4.对名字进行处理
name = UUID.randomUUID() + name;
// 5.拼接路径
File desPath = new File(path, name);
// 6.文件上传
try {
// writeByteArrayToFile(要上传的路径, 文件---字节数组)
FileUtils.writeByteArrayToFile(desPath, file.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
// 7.把路径放到数据库里 把该路径设置到user里面
equipment.setPic("equipViews//" + name);
}
/**
* 如果文件上传了,修改数据库 把原图片給替代 如果文件沒有上传 1.把原来的给他 2.不修改图片的路径 没有 --改 没有值 --不改 有值
* --不改
*/
if (n == null || n.equals("")) {
equipment.setPic(null);
}
equipmentService.insertSelective(equipment);
return "redirect:/equipViews/taizhang.action";
}

// 跳转到查看详情页面
@RequestMapping("taizhang/fingById.action")
public String taizhangFingById(Model model, Integer id) {
Equipment equipment = equipmentService.selectByPrimaryKey(id);
model.addAttribute("equipmentList", equipment);
return "equipViews/detailsParameter";
}

转载于:https://www.cnblogs.com/yueguanguanyun/p/8036980.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值