jsp页面

<form class="form-horizontal" role="form"
action="brandAction_addBrandMes" method="post" enctype="multipart/form-data">

<div class="form-group">
<label for="picPath" class="col-sm-3 control-label">品牌大图:</label>
<div class="col-sm-5">
<input type="file" id="picPath" name="pp" placeholder="请上传...">
</div>
</div>

<div class="form-group">
<div class="col-sm-offset-5 col-sm-10">
<button type="submit" class="btn btn-primary">确定添加</button>
<button type="reset" class="btn btn-primary">重置</button>
</div>
</div>
</form>

action后台

private String ppFileName;// 品牌大图名(命名规则:input中的name值+FileName)
private File pp;//品牌大图(命名规则:input中的name值)

后台解析代码

public String getPicturePatch(String fileName, File file, String folderName) throws IOException {
String newPath = "";
if (fileName != null && !"".contentEquals(fileName)) {
String picName = new Date().getTime() + fileName.substring(fileName.lastIndexOf("."), fileName.length());//当前时间+图片后缀
String path = new File(ServletActionContext.getServletContext().getRealPath("/")).getParentFile() + "/"
+ folderName + "/";  //文件要保存的位置
File saved = new File(path);
InputStream ins = null;
OutputStream ous = null;
if (!saved.exists()) {
saved.mkdirs();
}
try {
ins = new FileInputStream(file);
ous = new FileOutputStream(new File(path, picName));

byte[] b = new byte[1024];
int len = 0;

while ((len = ins.read(b)) != -1) {
ous.write(b, 0, len);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (ous != null)
ous.close();
if (ins != null)
ins.close();
}

HttpServletRequest req = ServletActionContext.getRequest();
String serverPath = req.getScheme() + "://" + req.getServerName() + ":" + req.getServerPort() + "/";
newPath = serverPath + folderName + "/" + picName;
}
return newPath;
}

关于form表单上传图片的一些记录的更多相关文章

  1. 摒弃FORM表单上传图片,异步批量上传照片

    之前作图像处理一直在用form表单做图片数据传输, 个人感觉low到爆炸而且用户体验极差,现在介绍一个一部批量上传图片的小技巧,忘帮助他人的同时也警醒自己在代码的编写时不要只顾着方便,也要考虑代码的健 ...

  2. iOS 提交form表单,上传图片

    之前不会用,总感觉很难,用后感觉不是太难,本文只是简单的讲一下怎么使用的, //实例话对象 AFHTTPSessionManager *manager = [AFHTTPSessionManager ...

  3. form表单上传图片问题:线下可以而线上不可以

    由于上传图片需要一定时间,而线下速度快线上速度慢. 所以如果你的上传窗口是弹出界面,那么就会面临上传未完成就关闭了该界面.导致上传失败.

  4. form表单上传图片文件

    import os def upload(request): if request.method == 'GET': img_list = models.Img.objects.all() retur ...

  5. Ajax提交Form表单及文件上传

    刚刚申请下来的博客,写得第一篇.有点小激动,本人以前是一名工业3D设计师突然有些变故做上了JavaWeb开发: 前几天,发现了一些小问题.我在写后台管理页面时,需要上传一张图片.于是我就用很普通的Fo ...

  6. php form表单ajax上传图片方法

    form表单ajax上传图片方法 先引用jquery.form.js 前台代码<pre><form id="form1"> <input id=&qu ...

  7. ant-pro使用Form表单验证上传图片出现的问题

    1.复现:用antd的Form表单验证上传图片必填项时出现问题:复现过程,先提交,提示图片需要上传,上传成功后,依旧提示:图片未上传 2.表单验证原理:先理解一下antd的Form表单验证的表层原理, ...

  8. 【记录】解决前端form表单回车禁止刷新页面

    最近弄前端 有form表单的情况下 按回车会自动刷新当前页面. 现记录解决方案如下: 1.去掉表单 2.不要让表单中只有一个文本框(增加一个隐藏的文本框就行) 3.以上两点都不想使用,那么就还可以在表 ...

  9. form表单重置、清空方法记录

    myform 是form的id属性值 1.调用reset()方法 function fomrReset() { document.getElementById("myform"). ...

随机推荐

  1. Swing-布局管理器之BorderLayout(边界布局)-入门

    注:本文内容基本源于Java图形化界面设计——布局管理器之BorderLayout(边界布局),笔者学习过程中根据自身理解进行少量编辑. 边界布局管理器(BorderLayout)把容器的的布局分为五 ...

  2. 201521123017 《Java程序设计》第6周学习总结

    1. 本周学习总结 <> 2. 书面作业 Q1.clone方法 1.1 Object对象中的clone方法是被protected修饰,在自定义的类中覆盖clone方法时需要注意什么? 1. ...

  3. 201521123037 《Java程序设计》第3周学习总结

    1. 本周学习总结 链接:http://naotu.baidu.com/file/026a646bb4031d4238accc69cdf53272 2. 书面作业 1. 代码阅读 public cla ...

  4. We Talk -- 团队博客

    WeTalk --在线群聊程序 团队博客 服务器一直在运行,使用客户端可直接登入使用.(做得很粗糙...) 客户端下载(java环境下直接运行) 0.项目介绍 现在我们网上交流离不开微信和QQ,当然在 ...

  5. 201521123022 《Java程序设计》 第九周学习总结

    1.本章学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 Q1.1 截图你的提交结果(出现学号) Q1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何 ...

  6. MySQL的JOIN(五):JOIN优化实践之排序

    这篇博文讲述如何优化JOIN查询带有排序的情况.大致分为对连接属性排序和对非连接属性排序两种情况.插入测试数据. CREATE TABLE t1 ( id INT PRIMARY KEY AUTO_I ...

  7. java的Date类和TimeStamp类

    Java API中有两个Date类,一个是java.util.Date,其构造方法如下: Date() Date(long date) 主要方法有: boolean after(Date when) ...

  8. CacheConcurrencyStrategy五种缓存方式

    CacheConcurrencyStrategy有五种缓存方式:  CacheConcurrencyStrategy.NONE,不适用,默认  CacheConcurrencyStrategy.REA ...

  9. Linux 安装 mysql 并配置

    1.下载 下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads 下载版本:我这里选择的5.6.33,通用版,linux下64位 也可 ...

  10. 通用技术 : 异步调用 - Ajax技术

    Ajax技术概述