java文件上传ssm框架_文件上传—SSM框架文件上传

/** 管理员新增用户*/@RequestMapping(value="/newadd",method=RequestMethod.POST)publicString doAddUser(HttpSession session,HttpServletRequest request,

@RequestParam(value="attachs",required=false)MultipartFile[] attachs,

User user){//定义两个上传文件的路径

String wkpicpath = null;

String hdpicpath= null;

String errorinfo= null;//定义上传过程管理标记

boolean flag = true;//定义文件保存的位置

String path = request.getSession().getServletContext().getRealPath("statics"+File.separator+"uploadfiles");//循环读取文件信息

for(int i=0;i

MultipartFile attach=attachs[i];//判断文件是否为空

if(!attach.isEmpty()){//判断是第几个文件

if(i==0){

errorinfo= "uploadwkError";

}else if(i==1){

errorinfo= "uploadhdError";

}//获取源文件名

String oldName=attach.getOriginalFilename();//获取源文件名后缀

String prefixName =FilenameUtils.getExtension(oldName);int fileSize = 500000;//判断上传大小不得超过500K

if(attach.getSize()>fileSize){

session.setAttribute(errorinfo,"上传文件不得大于500k");

flag= false;

}else if(prefixName.equalsIgnoreCase("jpg")|| prefixName.equalsIgnoreCase("png")|| prefixName.equalsIgnoreCase("jpeg")|| prefixName.equalsIgnoreCase("pneg")){//判断上传格式//定义新的文件名,当前系统时间+随机数+固定后缀,//RandomUtils需要引入jar文件commons-lang.jar//String fileName = System.currentTimeMillis()+RandomUtils.nextInt(1000000)+"personer.jpg";

String fileName = System.currentTimeMillis()+"personer.jpg";//创建新的文件,用于接收用户上传的文件流

File targetFile = newFile(path, fileName);if(!targetFile.exists()){

targetFile.mkdirs();

}//将上传的文件保存

try{

attach.transferTo(targetFile);

}catch(Exception e) {

e.printStackTrace();

session.setAttribute(errorinfo,"上传失败!");

flag= false;

}//更新上传的路径

if(i==0){

wkpicpath= path + File.separator +fileName;

}else if(i==1){

hdpicpath= path + File.separator +fileName;

}

}else{

session.setAttribute(errorinfo,"图片格式不正确!");

flag= false;

}

}

}//准备User

if(flag){

user.setWkpicpath(wkpicpath);

user.setHdpicpath(hdpicpath);

user.setUserrole(1);//插入数据库

if(userService.findAddUser(user)>0){return "redirect:/index/user";

}

}return "manager/user-add.jsp";

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值