<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    修正Grails in Action中上傳文件的方法

    Grails in Action 中給出了上傳文件的方法,但好像有點問題,改過的如下所示:

    1. 上傳夠保存到數據庫的方式
        默認情況下,grails的 byte[] 在mysql中使用的是tinyblob,所以當上傳大文件的時候就出現錯誤。
    最簡單的辦法:
       直接手動把數據庫該字段的類型從tinyblob改成longblob,但是注意DataSouce中的dbCreate方式要改成“update”
        development {
            dataSource {
                dbCreate 
    = "update" // one of 'create', 'create-drop','update'
                //url = "jdbc:hsqldb:mem:devDB"
                driverClassName = "com.mysql.jdbc.Driver"
                username 
    = "root"
                password 
    = "dens"
                url 
    = "jdbc:mysql://localhost:3306/hubbub?useUnicode=true&characterEncoding=utf8"
            }
        }


    2. 上傳后保存到文件的方式

       服務器端:  ImageController中的action 為rawUpload, 主要是增加了獲取rootPath以及params.id,然后保存.

        def rawUpload = {
            def mhsr 
    = request.getFile('photo')
            def rootPath 
    = this.servletContext.getRealPath(""
            
            
    if(!mhsr?.empty && mhsr.size < 1024*20000) {
                 mhsr.transferTo(
                    
    new File("$rootPath/images/upload/${params.userId}/mugshot.gif") )
            }
        }

       客戶端:  主要是增加了請求格式enctype="multipart/form-data"
     1 <html>
     2     <head>
     3         <title>Upload Image</title>
     4         <meta name="layout" content="main"/>
     5     </head>
     6     <body>
     7     
     8       <g:uploadForm action="rawUpload" enctype="multipart/form-data">
     9             User Id:
    10             <g:select name="userId" from="${com.grailsinaction.User.list()}"
    11                       optionKey="userId" optionValue="userId" />
    12             <p/>
    13             Photo: <input name="photo" type="file" />
    14             <g:submitButton name="upload" value="Upload"/>
    15         </g:uploadForm>
    16 </body>
    17 </html>

    posted on 2010-08-11 16:48 想飛就飛 閱讀(1753) 評論(0)  編輯  收藏 所屬分類: 讀書筆記J2EEGroovy/Grails

    公告


    導航

    <2010年8月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    統計

    常用鏈接

    留言簿(13)

    我參與的團隊

    隨筆分類(69)

    隨筆檔案(68)

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产亚洲精品a在线观看| 久久丫精品国产亚洲av不卡| 国产一级在线免费观看| 91亚洲精品视频| 日韩免费三级电影| 色播在线永久免费视频网站| 亚洲人成毛片线播放| xvideos亚洲永久网址| 人妻无码一区二区三区免费| 亚洲欧美黑人猛交群| 亚洲精品亚洲人成人网| 亚洲成AV人片久久| 免费二级毛片免费完整视频| 嫩草成人永久免费观看| 亚洲AV无码专区在线电影成人| 久久精品7亚洲午夜a| 免费中文字幕在线| 国产无人区码卡二卡三卡免费 | 国产偷国产偷亚洲高清人| 久久精品7亚洲午夜a| 国产精品四虎在线观看免费 | 欧美大尺寸SUV免费| 精品97国产免费人成视频| 亚洲免费日韩无码系列| 亚洲高清中文字幕免费| 国内永久免费crm系统z在线 | 久久免费高清视频| 猫咪免费观看人成网站在线| 亚洲嫩草影院在线观看| 国产亚洲色婷婷久久99精品| 免费永久看黄在线观看app| 无码区日韩特区永久免费系列| a色毛片免费视频| 看成年女人免费午夜视频| 77777午夜亚洲| 亚洲天堂中文资源| 国产亚洲精品无码成人| 亚洲精品偷拍视频免费观看| 日本特黄a级高清免费大片| 久久久久久久免费视频| 久久久久久精品免费免费自慰|