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

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

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

    龍行天下

      政 博
    隨筆 - 23, 文章 - 0, 評論 - 12, 引用 - 0
    數據加載中……

    在Struts框架內實現圖片上傳 (轉載:http://www.tkk7.com/Todayfreeman/)

    這個問題讓我郁悶了兩三天時間,最后才發現問題是在JSP端? <html:form action="/uploadsAction"? enctype="multipart/form-data"? >
    標簽如果少了"? enctype="multipart/form-data" ?服務器就會報錯,
    下面把代碼貼出來.

    JSP端
    ?<html:errors />
    ????????? <html:form action="/uploadsAction"? enctype="multipart/form-data"? >
    ??????????? <html:file property="theFile" />?
    ???????????? <html:radio property="upType" value="a" />CSVFileReader
    ???????????? <html:radio property="upType" value="b" />FileUp??????
    ??????????? <html:submit value="OK"? />
    ????????? </html:form>
    FormBean中將屬性定義為FormFile,geter seter 方法依舊.
    Action 中的代碼如下:實現將圖片上傳至UPLOAD文件夾內 如果文件大于20K或是寬&高超過規定范圍的,會重新勾畫.實現對上傳圖片的控制.
    當然這只是測試Action沒有跳轉頁面..

    package upload;

    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionForm;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.Action;
    import org.apache.struts.upload.*;
    import java.io.IOException;
    import java.awt.Image;
    import java.awt.image.BufferedImage;
    import com.sun.image.codec.jpeg.JPEGImageEncoder;
    import com.sun.image.codec.jpeg.JPEGCodec;

    import java.io.File;
    import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.FileOutputStream;

    public class UploadAction extends Action {
    ??? public ActionForward execute(ActionMapping actionMapping,
    ???????????????????????????????? ActionForm actionForm,
    ???????????????????????????????? HttpServletRequest servletRequest,
    ???????????????????????????????? HttpServletResponse servletResponse)throws Exception {
    ??????? System.out.println("asdasdasdasdasdasd");
    ??????? UploadForm uploadForm = (UploadForm) actionForm;
    ??????? FormFile pic =? uploadForm.getPic();
    ??????? String picname = pic.getFileName();
    ??????? String uploadFileName = servletRequest.getSession()
    ??????????????????????????????? .getServletContext()
    ??????????????????????????????? .getRealPath("upload")+"\\"+picname;
    ??????? File upliadFile = new File(uploadFileName);
    ??????? BufferedInputStream bis = null;
    ??????? Image image = null;
    ??????? BufferedOutputStream bos = null;
    ??????? try{
    ??????? if(pic.getFileSize()<2*1024*1024){
    ??????? bis = new BufferedInputStream(pic.getInputStream());
    ??????? image = javax.imageio.ImageIO.read(bis);
    ??????? int width = image.getWidth(null);
    ??????? int height = image.getHeight(null);
    ??????? int w = 160;
    ??????? int h = 120;
    ??????? if(width>w||height>h){
    ??????? BufferedImage bi = new BufferedImage(w,h,
    ???????????????????????????????????????????? BufferedImage.TYPE_INT_RGB);
    ??????? bi.getGraphics().drawImage(image,0,0,w,h,null);
    ??????? bos = new BufferedOutputStream(new FileOutputStream(
    ???????upliadFile));
    ??????? JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(bos);
    ?????encoder.encode(bi);
    ??????? System.out.println(width * height);
    ??????? }else{
    ??????? bos = new BufferedOutputStream(new FileOutputStream(upliadFile));
    ??????? byte[] date = new byte[5*1024];
    ??????? int len = bis.read(date);
    ??????? while (len!=-1){
    ??????????? bos.write(date);
    ??????????? len = bis.read(date);
    ??????? }
    ??????? }
    ??????? }
    ???????????? return actionMapping.findForward("ok");
    ??????? }catch(Exception e){
    ??????? e.printStackTrace();
    ??? } finally {
    ??????? try {
    ??????????? if (bis != null)
    ??????????????? bis.close();
    ??????? } catch (IOException e1) {

    ??????????? e1.printStackTrace();
    ??????? }
    ??????? try {
    ??????????? if (bos != null)
    ??????????????? bos.close();
    ??????? } catch (IOException e2) {

    ??????????? e2.printStackTrace();
    ??????? }
    ??? }

    ??????? return actionMapping.findForward("ok");
    ??? }
    }

    posted on 2006-05-03 20:09 feingto 閱讀(967) 評論(0)  編輯  收藏 所屬分類: Java Web

    主站蜘蛛池模板: 国产三级免费观看| 亚洲国产精品yw在线观看| 亚洲熟妇无码一区二区三区导航 | 日亚毛片免费乱码不卡一区| 国产精彩免费视频| 精品国产亚洲一区二区三区| 美女羞羞喷液视频免费| A在线观看免费网站大全| 亚洲AV无码久久精品蜜桃| 免费无遮挡无码视频在线观看 | 亚洲伊人久久大香线蕉影院| 中文字幕在线免费看线人| 国产99视频精品免费视频7| 国产成人精品日本亚洲专一区| 免费成人在线视频观看| 亚洲人成无码久久电影网站| 亚洲精品色播一区二区| 成人免费激情视频| 亚洲无线电影官网| 永久在线观看免费视频| 亚洲欧洲一区二区三区| 白白色免费在线视频| 香蕉高清免费永久在线视频| 亚洲区视频在线观看| 99久久国产免费中文无字幕| 亚洲国产精品无码久久SM| 久久不见久久见免费影院www日本| 免费人成激情视频| 亚洲av无码成人精品区一本二本 | 亚洲最大的成人网站| 台湾一级毛片永久免费| 亚洲精品美女久久久久9999| 一级毛片在线免费看| 久久亚洲国产精品| 两个人看www免费视频| 亚洲日韩一页精品发布| 精品国产免费人成网站| 国产亚洲av片在线观看18女人| 日本一区二区三区免费高清在线 | 免费人成视频在线观看网站| 亚洲av无码成h人动漫无遮挡|