重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
音乐放在服务器的目录文件里就可以了,数据库只需存放音乐的路径。
创新互联公司专业为企业提供同心网站建设、同心做网站、同心网站设计、同心网站制作等企业网站建设、网页设计与制作、同心企业网站模板建站服务,十多年同心做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
图片和音乐可以用二进制进行存储 ,首先,你必须在你的mysql中建立一个新的数据库,我们将会把那些二进制文件储存在这个数据库里。在例子中我会使用下列结构,为了建立数据库,你必须做下列步骤:
进入MySql控制器
输入命令”create database binary_data;”
输入命令”use binary_data;”
输入命令”CREATE TABLE binary_data ( id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY,
description CHAR(50), bin_data LONGBLOB, filename CHAR(50), filesize CHAR(50), filetype CHAR(50));” (不能断行)
如果没有意外,数据库 和 表 应该建立好了。
一个怎样储存文件的例子程序 用这个例子你可以通过Html表单将文件传输到数据库中。.
这是我写的上传部分的代码,你可以参考下。
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
能存放,但是不是好的解决方案,正常情况下都是在数据库中存放文件路径,图片、音乐、视频文件存放在硬盘上。
你应该在数据库表存储音乐文件的路径,然后直接读出文件路劲,然后在页面引用一个音乐播放控件,将读出的文件路径加载的控件上就能显示并能点击播放了