• 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);
                    }
                }, 
    
    
    
     
  • 相关阅读:
    django中的自定义标签与过滤器,静态文件配置,orm前戏
    JavaScript(js)运算符
    JavaScript(js)字面量,函数写法
    JavaScript(js)的4中输出方式
    JavaScript(js)的学习使用样式,核心语法,数据类型
    标签链接、表单及css部分知识
    学习html5 附代码
    automationOperationsWithPython
    0821 1336 模块与包的导入方法、常用模块介绍
    0816 1459 json & pickle ,目录导入,目录规范
  • 原文地址:https://www.cnblogs.com/mwd-banbo/p/8584953.html
Copyright © 2020-2023  润新知