public String savefile() throws Exception{
String realpath = ServletActionContext.getServletContext().getRealPath(
"/file")
realpath = realpath
if (upload != null) {
//使用上传文件名创建本地文件
File savefile = new File(new File(realpath), uploadFileName)
if (!savefile.getParentFile().exists())
savefile.getParentFile().mkdirs()
//拷贝文件到上传目录
FileUtils.copyFile(upload, savefile)
}
if ((this.uploadFileName != null) &&(!this.uploadFileName.equals(""))) {
//设置上传文件名
if(myfile.getId()!=null){//重新上传文件时先删除原先的文件
Myfile tmpfile = fileService.loadfile(myfile.getId())
String fileName = tmpfile.getFilename()
String filePath = realpath + "/" + fileName
File deletefile = new File(filePath)
deletefile.delete()
myfile.setFilename(uploadFileName)
}
else
myfile.setFilename(uploadFileName)
}
else {
//修改信息但是未修改上传文件
if (myfile.getId()!=null) {
myfile.setFilename(fileService.loadfile(myfile.getId()).getFilename())
}
}
fileService.savefile(myfile)
return "success"
}
正确的做法是mysql中设立一个字段存放mp3文件的路径,真正的mp3文件需要存放到磁盘的某个路径下, 这样读取到db的路径,去对应的磁盘里面找mp3并加载。比如保存: XYZ.Wav在C:\MyProgram\Data\Sounds\X\那么全路径就是
C:\MyProgram\Data\Sounds\X\XYZ.Wav
这时候在mysql的字段中保存的路径就是X\XYZ.Wav
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)