以下是我实现的视频的上传和下载(上传中我去了几个字段,但大体思路是这样的)VideoController.groovy
def upload = {
if(request.method=="POST"){
def uploadedFile = request.getFile('myFile');
if(uploadedFile&&!uploadedFile.empty) {
def name= uploadedFile.originalFilename;
videosInstance.videoPath="D://video/"+name;
uploadedFile.transferTo(new java.io.File(videoPath));
if(!videosInstance.hasErrors() && videosInstance.save()){
flash.message = "<font color='red'>视频上传成功!</font>"
}
}
else
{
flash.message = "上传视频失败!";
render(view: 'upload',model:[videosInstance:videosInstance,id:params.id])
return;
}
}
def download={
def vid=params.id;
def videoInstance = Video.get( params.id );
def fileName=videoInstance.name;
def name=new String(fileName.getBytes("UTF8"),"ISO8859-1")
def filepath = videoInstance.videoPath+fileName+"."+ videoInstance.videoType
def out =null
def inputStream = new FileInputStream(filepath)
response.setHeader("Content-disposition", "attachment; filename="+name+".flv");
response.setHeader("Content-Length","${inputStream.available()}");
response.setContentType("application/octet-stream");
response.contentType = "application/x-rarx-rar-compressed";
try{
out = response.outputStream
byte[] buffer = new byte[1024]
int i = 0
while ((i = inputStream.read(buffer,0,buffer.length)) != -1) {
out.write(buffer, 0, i)
}
def file = Video.findById(vid)
//file.setCount(file.count+1)
//file.save()
file.downCount++
file.save()
out.flush()
}
catch (Exception e) {
// println "取消下载";
e.printStackTrace()
}
finally {
if(out!=null)
try{
out.close();
if(inputStream!=null)
inputStream.close() ;
}
catch(Exception e){
// println "关闭IO异常";
}
}
}
分享到:
相关推荐
grails中的上传,下载,需要的请下载
NULL 博文链接:https://rox.iteye.com/blog/834595
Grails入门指南书籍和源码----下载不扣分,回帖加1分,欢迎下载,童叟无欺 getting started with grails chinese Grails入门指南书籍和源码----下载不扣分,回帖加1分,欢迎下载,童叟无欺 getting started with ...
供初学者使用,在grails中只有list(自动生成)中有分页实现,而自己新增的页面中需自己实现分页,该文档中描述了如何实现分页以及注意点
NULL 博文链接:https://extrimlycold20070206121610.iteye.com/blog/1139647
Grails Grails Grails Grails Grails
grails文件 很好的资源啊
grails3.3下载,grails-3.3.0.zip
Grails入门好资料
精通Grails 之用 JSON 和Ajax 实现异步Grails。书中包含了全部代码。免费下载
Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南
Groovy和Grails配置方法 教你从0入手,一步一步深入安装和测试,包含环境和语言的下载地址
grails3.2.8 part1
该资源在官方的网站上下载速度太慢,现在放在这里共各位下载。
grails-5.1.2.zip
grails除了核心模块以外的功能几乎都是通过插件方式实现的。实际上,一个grails插件和一个grails应用基本是完全一样的,同样可以使用grails run-app命令来运行。区别仅在于一个插件的根目录下需要提供一个fooplugin....
grails-2
grails开发实践,欢迎下载使用 grails开发实践,欢迎下载使用 grails开发实践,欢迎下载使用
Grails1.1中文文档 目前国内的grails资料较少,这个帮助文档很有作用
4.1 简化的orm和grails对象关系映射(gorm) 4.2 gorm基础 4.3 设置属性可选 4.4 gorm中的关系 4.5 执行crud操作 4.5.1 创建书签 4.5.2 读取书签 4.5.3 更新书签 4.5.4 ...