zoukankan      html  css  js  c++  java
  • Java 后台处理数据库的二进制图片流

        //接口
      public InputStream loadInvoiceRider(String INVOICE_ID_);   //实现层 @Override public InputStream loadInvoiceRider(String INVOICE_ID_) { String sql = "select RIDER_ from MP_INVOICE where INVOICE_ID_ = ?"; return mpJdbcTemplate.queryForObject(sql, new Object[] { INVOICE_ID_ }, new RowMapper<InputStream>() { public InputStream mapRow(ResultSet rs, int rowNum) throws SQLException { return rs.getBinaryStream(1); } }); }
       //控制层 @RequestMapping(value
    = "loadInvoiceRider") public void loadInvoiceRider(String INVOICE_ID_, HttpServletRequest request, HttpServletResponse response, HttpSession session) { Map<String, Object> result = new HashMap<String, Object>(); try { getOperator(request, session); InputStream inputStream = invoiceService.loadInvoiceRider(INVOICE_ID_); response.reset(); ServletOutputStream out = response.getOutputStream(); byte[] content = new byte[65535]; int length = 0; if (inputStream != null) { while ((length = inputStream.read(content)) != -1) { out.write(content, 0, length); } } out.flush(); out.close(); log("admin", "InvoiceController.loadInvoiceRider", INVOICE_ID_, "0", null, request, session); } catch (Exception e) { logger.error(e.getMessage(), e); result.put("message", getErrorMessage(e, request)); result.put("success", false); StringWriter stringWriter = new StringWriter(); e.printStackTrace(new PrintWriter(stringWriter)); log("admin", "InvoiceController.loadInvoiceRider", INVOICE_ID_, "1", stringWriter.toString(), request, session); } }

    前台直接把请求地址,放在图片的src位置
    {
                    xtype : 'actioncolumn',
                    width : 280,
                    dataIndex : 'INVOICE_ID_',
                    text : '<spring:message code="INVOICE" />',
                    align : 'center',
                    renderer : function(value, metaData, record) {
                        var id = metaData.record.id;
                        Ext.defer(function() {
                            Ext.create('Ext.Img', {
                                height : 140,
                                width : 250,
                                src : 'loadInvoiceRider.do?INVOICE_ID_=' + value,
                                renderTo : id,
                                listeners : {
                                    scope : this,
                                    el : {
                                        dblclick : function(e, a) {
                                            var winViewImage = Ext.create('Ext.Window', {
                                                width : 750,
                                                height : 500,
                                                maximizable : true,//窗体最大化按钮
                                                title : '<spring:message code="image" />',
                                                layout : "fit", //窗口布局类型  
                                                modal : true, //是否模态窗口,默认为false  
                                                resizable : false,//调整窗体大小
                                                closeAction : 'hide', //关闭窗体实际上是隐藏窗体并未关闭销毁此窗体对象(节约资源)
                                                plain : true,//窗体主体部分背景颜色透明
                                                draggable : true,//充许拖动窗体
                                                border : false,
                                                items : [ Ext.create('Ext.Img', {
                                                    width : 750,
                                                    height : 500,
                                                    src : 'loadInvoiceRider.do?INVOICE_ID_=' + value
                                                }) ]
                                            });
                                            winViewImage.show();
                                        }
                                    }
                                }
    
                            })
                        }, 50);
    
                        return Ext.String.format('<div id="{0}"></div>', id);
                    }
                }, 
    
    
    
     
  • 相关阅读:
    父子进程 signal 出现 Interrupted system call 问题
    一个测试文章
    《淘宝客户端 for Android》项目实战 html webkit android css3
    Django 中的 ForeignKey ContentType GenericForeignKey 对应的数据库结构
    coreseek 出现段错误和Unigram dictionary load Error 新情况(Gentoo)
    一个 PAM dbus 例子
    漫画统计学 T分数
    解决 paramiko 安装问题 Unable to find vcvarsall.bat
    20141202
    js
  • 原文地址:https://www.cnblogs.com/mwd-banbo/p/8584953.html
Copyright © 2011-2022 走看看