public static String generatePath(String path, String filename) {
//生成一个uuid值
String uuid = UUID.randomUUID().toString();
// 根据uuid值生成子目录,生成算法用hash目录生成算法
// dir1 32位
int dir1 = uuid.hashCode() & 0xf;//
int dir2 = (uuid.hashCode() >> 4) & 0xf;//
String dir = path + "\\" + dir1 + "\\" + dir2 + "\\";
//在硬盘中创建目录
File f = new File(dir);
//判断目录是否已经存在
if (!f.exists()) {
//f.mkdir(); //千万小心,这里要生多级目录,调mkdir()是不行的
f.mkdirs();// 生成多级目录
}
//对文件名加入uuid,避免上传文件名相同时原文件被覆盖的情况
filename = uuid + "_" + filename;
return dir + filename;// 返回目录名+文件名组合后的名称
}
4.利用javascript实现多文件上传:
<script type="text/javascript">
function add(){
var file = document.getElementById("file");
var div = document.getElementById("div");
document.createElement()
}
</script>
5.显示上传进度条
upload.setProgressListener(new ProgressListener()){
public void update(long pBytesRead, long pContentLength, int pItems) { //pBytesRead为已上传,pContentLength为总大小
System.out.println("到现在为止, " + pBytesRead + " 字节已上传,总大小为 "+ pContentLength);
}
}
(2)将上传文件的信息,存入数据库中:
1.建一个类UpFile用于存放文件信息
2.建立工具类JdbcUtil,连接数据库
3.建一个用操作将数据库与实体类的Dao接口
4.建立一个实现Dao接口的类,操作数据库与实体类