Grails笔记三:完整的文件上传实例

文件上传在web应用中是比较普遍的,相对于使用jsp等技术实现文件上传,Grails的文件上传着实让人喜爱,因为极其简单,让人看一遍就容易轻松记住!不多说,实例如下:


1.在gsp页面中使用Grails标签uploadForm

<g:uploadForm name="myUpload" action="saveFile">
    <input type="file" name="myFile" />
    <button type="submit">提交</button>
</g:uploadForm>

当然也可以使用普通的<g:form>标签,但是这样需要添加一个属性:enctype="multipart/form-data",其它与<g:uploadForm>并无不同。

2.在grais-app中创建一个控制器controllers

假设该控制器名为uploadFile,在这个控制器中创建一个action:saveFile

    def saveFile(){
        /*获取客户端传递过来的文件,
        其中getFile()中的参数是类型为file的input的name属性的值*/
        def file=request.getFile("myFile")
//        获取文件的大小
        println file.size
//        获取文件的类型,如image/jpeg
        println file.contentType
//        获取文件的原始名称
        println file.originalFilename
//        将文件存储在自己希望存放的地方以及格式
        f.transferTo( new File( "d://1.jpg", f.originalFilename))
    }

 如果这个在很多控制器中都有使用,最好写成一个service!


 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。