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

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

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

    我思故我強

    JSP上傳圖片并生成縮略圖

    本例子使用了jspsmart組件進行上傳,這里可以免費下載該組件www.jspsmart.com
    下載解壓后,將jar包復制到 \WEB-INF\lib 目錄后重啟服務器,jspsmart即可正常使用了

    1、uploadimage.jsp

    <%@ page contentType="text/html;charset=gb2312" language="java" import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,
    java.sql.*,com.jspsmart.upload.*,java.util.*,cn.oof.database.*,cn.oof.house.*"%>
    <%
    SmartUpload mySmartUpload =new SmartUpload();
    long file_size_max=4000000;
    String fileName2="",ext="",testvar="";
    String url="uploadfile/images/";?????? //應保證在根目錄中有此目錄的存在
    //初始化
    mySmartUpload.initialize(pageContext);
    //只允許上載此類文件
    try {
    mySmartUpload.setAllowedFilesList("jpg,gif");
    //上載文件
    mySmartUpload.upload();
    } catch (Exception e){
    %>
    ?? <SCRIPT language=javascript>
    ?? alert("只允許上傳.jpg和.gif類型圖片文件");
    ?? window.location=''upfile.jsp'';
    ?? </script>
    <%
    }
    try{

    ???? com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
    ???? if (myFile.isMissing()){%>
    ??? <SCRIPT language=javascript>
    ??? alert("請先選擇要上傳的文件");
    ??? window.location=''upfile.jsp'';
    ??? </script>
    ???? <%}
    ???? else{
    ?????? //String myFileName=myFile.getFileName(); //取得上載的文件的文件名
    ??? ext= myFile.getFileExt();?????? //取得后綴名
    ??? int file_size=myFile.getSize();????? //取得文件的大小??
    ??? String saveurl="";
    ??? if(file_size<file_size_max){
    ???? //更改文件名,取得當前上傳時間的毫秒數值
    ???? Calendar calendar = Calendar.getInstance();
    ???? String filename = String.valueOf(calendar.getTimeInMillis());
    ???? saveurl=request.getRealPath("/")+url;
    ???? saveurl+=filename+"."+ext;?????????? //保存路徑
    ???? myFile.saveAs(saveurl,mySmartUpload.SAVE_PHYSICAL);
    ???? //out.print(filename);
    //-----------------------上傳完成,開始生成縮略圖-------------------------????
    ???? java.io.File file = new java.io.File(saveurl);???????? //讀入剛才上傳的文件
    ???? String newurl=request.getRealPath("/")+url+filename+"_min."+ext;?? //新的縮略圖保存地址
    ???? Image src = javax.imageio.ImageIO.read(file);????????????????????? //構造Image對象
    ???? float tagsize=200;
    ???? int old_w=src.getWidth(null);????????????????????????????????????? //得到源圖寬
    ???? int old_h=src.getHeight(null);???
    ???? int new_w=0;
    ???? int new_h=0;???????????????????????????? //得到源圖長
    ???? int tempsize;
    ???? float tempdouble;
    ???? if(old_w>old_h){
    ????? tempdouble=old_w/tagsize;
    ???? }else{
    ????? tempdouble=old_h/tagsize;
    ???? }
    ???? new_w=Math.round(old_w/tempdouble);
    ???? new_h=Math.round(old_h/tempdouble);//計算新圖長寬
    ???? BufferedImage tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
    ???? tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);??????? //繪制縮小后的圖
    ???? FileOutputStream newimage=new FileOutputStream(newurl);?????????? //輸出到文件流
    ???? JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);???????
    ???? encoder.encode(tag);??????????????????????????????????????????????? //近JPEG編碼
    ????? newimage.close();????

    ??? }
    ??? else{
    ???? out.print("<SCRIPT language=''javascript''>");
    ???? out.print("alert(''上傳文件大小不能超過"+(file_size_max/1000)+"K'');");
    ???? out.print("window.location=''upfile.jsp;''");
    ???? out.print("</SCRIPT>");
    ??? }
    ?? }
    }catch (Exception e){

    e.toString();

    }
    %>

    2 upload.htm
    <html>
    <head>
    <title>請選擇上傳的圖片</title>
    </head>
    <body>
    <table border="0" align="center" cellpadding="0" cellspacing="0">
    ?? <tr>
    ???? <td height="45" align="center" valign="middle"><form action="uploadimage.jsp" method="post" enctype="multipart/form-data" name="form1">
    請選擇上傳的圖片
    ???? <input type="file" name="file">
    <input type="submit" name="Submit" value="上傳">
    ???? </form></td>
    ?? </tr>
    </table>
    </body>
    </html>

    posted on 2007-11-02 10:48 李云澤 閱讀(644) 評論(0)  編輯  收藏 所屬分類: J2EE

    主站蜘蛛池模板: 久久99国产乱子伦精品免费| a级毛片无码免费真人| 好男人视频在线观看免费看片| 无码视频免费一区二三区| 亚洲国产人成在线观看69网站| 日本免费中文视频| 久久亚洲精品成人综合| 亚洲精品免费在线观看| 777亚洲精品乱码久久久久久| 国产精品区免费视频| 精品亚洲成a人片在线观看| h在线观看视频免费网站| 亚洲AV一二三区成人影片| 毛片免费观看网址| 亚洲AV无码成人精品区狼人影院| 国产精品黄页在线播放免费| 国产亚洲成在线播放va| 亚洲日韩精品A∨片无码| 国产高清不卡免费视频| 亚洲AV成人无码天堂| 免费国产美女爽到喷出水来视频| 久久亚洲私人国产精品| 台湾一级毛片永久免费| 亚洲日本va午夜中文字幕一区| 亚洲视频在线免费看| 亚洲色无码专区一区| 亚洲精品成人a在线观看| 性无码免费一区二区三区在线| 亚洲一级免费视频| 国产精品美女自在线观看免费| 色多多www视频在线观看免费| 大学生高清一级毛片免费| 特级毛片全部免费播放a一级| 亚洲人成色777777在线观看| 99免费视频观看| 亚洲av永久无码精品秋霞电影秋| 中文字幕亚洲一区二区三区| 一区视频免费观看| 亚洲精品动漫在线| 亚洲高清无码综合性爱视频| 最近免费字幕中文大全视频|