java上传图片到服务器指定路径 50
比如jsp页面图片选择为<inputname="url"class="input-large"type="file"></input>,提交之后,后台如何将图片用时间戳命...
比如jsp页面图片选择为<input name="url" class="input-large" type="file"></input>,提交之后,后台如何将图片用时间戳命名,并写到服务器的指定文件夹。
@RequestMapping(value = "gift/addGift.do")
@ResponseBody
public Map<String,Object> addGift(HttpServletRequest req,
HttpServletResponse resp) {
代码
} 展开
@RequestMapping(value = "gift/addGift.do")
@ResponseBody
public Map<String,Object> addGift(HttpServletRequest req,
HttpServletResponse resp) {
代码
} 展开
1个回答
展开全部
private File myFile; //文件
private String myFileContentType; //类型
private String myFileFileName; //文件名
//。。。。getXXX() setXXX()方法
//输入流
InputStream is = new FileInputStream(myFile);
//设定文件路径
String photoPath = ServletActionContext.getServletContext()
.getRealPath("/user/photo/");
File filePhotoPath = new File(photoPath);
//判断这个路径是否存在,如果不存在创建这个路径
if (!filePhotoPath.isDirectory()) {
filePhotoPath.mkdir();
}
String extension = FilenameUtils.getExtension(this
.getMyFileFileName()); //后缀名 比如jpg
String filename = UUID.randomUUID().toString() + "." + extension;
// 目标文件
File tofile = new File(photoPath, filename);
// 输出流
OutputStream os = new FileOutputStream(tofile);
byte[] buffer = new byte[1024];
int length = 0;
while ((length = is.read(buffer)) > 0) {
os.write(buffer, 0, length);
}
// 关闭输入流
is.close();
// 关闭输出流
os.close();
更多追问追答
追问
前四行是需要建立实体类吗?还有就是提交的中的url在action中怎么获取?
追答
那三个变量就是action中的变量,记得要设置get set方法
struts2 会自动将那些变量初始化
下面的输入输出流可以放到execute()中
上传不了附件 不然可以直接给你看我以前写的代码
还有struts.xml 里action的配置 参考如下
/user/success.jsp
/user/showphoto.jsp
/error.jsp
image/bmp,image/pjpeg,image/gif,image/png,image/jpeg
1024*1024
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询