• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        從數據庫中讀取并生成圖片的Servlet

        從數據庫中讀取并生成圖片的Servlet

        更新時間:2022-05-10 文章作者:未知 信息來源:網絡 閱讀次數:

        大體思路
        1)創建ServletOutputStream對象out,用于以字節流的方式輸出圖像
        2)查詢數據庫,用getBinaryStream方法返回InputStream對象in
        3)創建byte數組用作緩沖,將in讀入buf[],再由out輸出

        注:下面的例程中數據庫連接用了ConnectionPool,以及參數的獲得進行了預處理

        package net.seasky.music;

        import javax.servlet.*;
        import javax.servlet.http.*;
        import java.io.*;
        import java.util.*;
        import java.sql.*;
        import net.seasky.util.*;
        import net.seasky.database.DbConnectionManager;

        public class CoverServlet extends HttpServlet {
        private static final String CONTENT_TYPE = "image/gif";
        public void init(ServletConfig config) throws ServletException {
        super.init(config);
        }

        public void doGet(HttpServletRequest request, HttpServletResponse response
        ) throws ServletException, IOException {
        response.setContentType(CONTENT_TYPE);
        int albumID;
        ServletOutputStream out = response.getOutputStream();
        try {
        albumID = ParamManager.getIntParameter(request,"albumID",0);
        }
        catch (Exception e) {
        response.sendRedirect("../ErroePage.jsp");
        return;
        }
        try {
        InputStream in=this.getCover(albumID);
        int len;
        byte buf[]=new byte[1024];
        while ((len=in.read(buf,0,1024))!=-1) {
        out.write(buf,0,len);
        }
        }
        catch (IOException ioe) {
        ioe.printStackTrace() ;
        }
        }

        private InputStream getCover(int albumID) {
        InputStream in=null;
        Connection cn = null;
        PreparedStatement pst = null;
        try {
        cn=DbConnectionManager.getConnection();
        cn.setCatalog("music");
        pst=cn.prepareStatement("SELECT img FROM cover where ID =?");
        pst.setInt(1,albumID);
        ResultSet rs=pst.executeQuery();
        rs.next() ;
        in=rs.getBinaryStream("img");
        }
        catch (SQLException sqle) {
        System.err.println("Error in CoverServlet : getCover()-" + sqle);
        sqle.printStackTrace() ;
        }
        finally {
        try {
        pst.close() ;
        cn.close() ;
        }
        catch (Exception e) {
        e.printStackTrace();
        }
        }
        return in;
        }

        public void destroy() {
        }

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 亚洲精品V天堂中文字幕| 亚洲中文久久精品无码1| 免费jlzzjlzz在线播放视频| 国产免费一区二区三区VR| 91麻豆精品国产自产在线观看亚洲| 中文字幕日韩亚洲| 亚洲成人黄色在线观看| 美女裸免费观看网站| a毛片免费全部播放完整成| 免费AA片少妇人AA片直播| 国产黄色片在线免费观看| 亚洲人成人一区二区三区| 亚洲欧美乱色情图片| 国产免费AV片在线观看| 成人奭片免费观看| 亚洲婷婷五月综合狠狠爱| 国产免费无码一区二区| 亚洲精品成人图区| 免费在线中文日本| 24小时日本在线www免费的| 亚洲日本在线电影| 无码不卡亚洲成?人片| 亚洲一级片在线观看| 日韩a级毛片免费视频| 农村寡妇一级毛片免费看视频| 99久久综合国产精品免费| 亚洲第一区视频在线观看| 最近中文字幕免费mv视频7| 精品亚洲成a人片在线观看| 四虎影视在线看免费观看| 亚洲人成网站免费播放| 特级aaaaaaaaa毛片免费视频| 亚洲精品无码精品mV在线观看| 麻豆va在线精品免费播放| 亚洲成亚洲乱码一二三四区软件| 中文字幕免费在线看电影大全| 亚洲精品美女久久久久99小说| 亚洲国产AV无码一区二区三区 | 亚洲a在线视频视频| 成在线人免费无码高潮喷水| 7777久久亚洲中文字幕蜜桃|