SSM框架多文件上传,如何实现修改操作,因为存入数据库的时候是用逗号隔开的,所以不知道怎么去是实现修改操作
@RequestMapping(value="/addGoods")
public String addGoods(Goods g,HttpServletRequest request,@RequestParam("epicture") MultipartFile[] epicture,HttpSession session )
{
//时间
Date d=new Date();
SimpleDateFormat smf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String gtime=smf.format(d);
g.setGtime(gtime);
//用户详细ID
int merchantinfoid=(int)session.getAttribute("merchantinfoid");
System.out.println(merchantinfoid);
g.setMerchantinfoid(merchantinfoid);
//获取文件存储位置
String path=request.getSession().getServletContext().getRealPath("/img");
System.out.println(path);
File pfile=new File(path);
if(!pfile.exists())
pfile.mkdir();
//上传多张图片
String picturePath="";
for(MultipartFile f:epicture) {
picturePath+=f.getOriginalFilename()+",";
try {
f.transferTo(new File(path,f.getOriginalFilename()));
} catch (IllegalStateException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
g.setOverlookImg("/img/"+picturePath);
System.out.println(g.getGname());
System.out.println(g.getOverlookImg());
System.out.println(g.getSpecification());
if(gs.addGoods(g))
return "main/adminIndex";
else
return "main/adminIndex";
}
我想过 用 在
<c:forTokens>
此方法中直接迭代出来,然后再一个个存入JavaBean中,这样是可以实现的么,在线求解
可以完成修改操作,因为我这种方法操作的是将文件上传的路径存到一个DB字段里面
你把附件单独弄一张表用来记录所有上传的文件 , 然后这个表里边有个字段(比如说 good_id)就是关联到 Goods的主键的 , 当你想获取当前Goods的所有文件时 你就擦查询这个附件表里边 查询 good_id 是当前Goods主键 就能获取所有的附件 , 这样做有个好处就是你不需要吧所有附件Id存到一个字段里边造成修改比较困难