java存储音频文件及校验与读取
音频存储为音频流
前端部分
前端html
注意:前端使用的是Angular.js框架前端js
2.1 文件上传切换
2.2 文件提交-service.js
2.3. 文件上传
后端部分
文件接收-controller
文件后缀判断-controller
文件内容判断-controller
注意:
1、上传文件为了安全考虑,需要验证文件内容,音频文件一般为“494433030000”,(部分音频文件头字节码并不符合,但均为纯数字),如下
2、需要上传路径的,需要对路径防穿越处理文件流的接收字段
Mybatis中类型使用
Mysql中类型使用
注意:此处voice字段采用的是mediumblob,可提供16M的数据存储,而mysql常规有四种类型,使用时需要考虑性能等情况,择优选择,如下:
MySQL有四种BLOB类型:
·tinyblob:仅255个字符
·blob:最大限制到65K字节
·mediumblob:限制到16M字节
·longblob:可达4GBMysql中存储结果展示
音频流转换为文件
后端读取音频流-controller
- 获取音频流
1.1 controller展示
1.2 Dao展示
1.3 mapper展示
1.4 JavaBean展示 - 创建音频文件
2.1 路径生成
2.2 音频生成
2.3 结果展示
版权声明:本文为weixin_44329964原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。