当前位置: 首页 > news >正文

公司开发网站流程门户网站建设原则

公司开发网站流程,门户网站建设原则,企业首次建设网站的策划流程,触屏音乐网站源码目录 1.varbinary(max)的说明 2.图片显示 3.总结 1.varbinary(max)的说明 varbinary(max) 是一种SQL Server数据库字段类型,用于存储二进制数据,可以存储最大长度的二进制数据。以下是关于 varbinary(max) 的说明: 存储容量: 可以存储最大…

目录

1.varbinary(max)的说明

2.图片显示

3.总结


1.varbinary(max)的说明

varbinary(max) 是一种SQL Server数据库字段类型,用于存储二进制数据,可以存储最大长度的二进制数据。以下是关于 varbinary(max) 的说明:

  • 存储容量: 可以存储最大长度为 2^31-1 字节(即 2,147,483,647 字节),这使得它非常适合存储大型二进制数据,例如图片、音频或视频文件等。

  • 用途: 主要用于存储不需要字符集或排序规则的二进制数据,通常是不需要进行文本排序或比较的数据。

  • varbinary 的区别: varbinary(max) 可以存储超过 8,000 字节的数据,而 varbinary 有大小限制,最大长度为 8,000 字节。

  • 数据处理: 在数据库中存储的二进制数据可以是任何类型的文件或数据流,通过数据库管理系统可以进行存储、检索和管理。

总结而言,varbinary(max) 是SQL Server中用于存储大型二进制数据的灵活且高容量的字段类型,适合于需要存储大型文件或二进制数据流的场景。

2.图片显示

①使用mybatis查询二进制数据

Object selImageInfo(@Param("docId") Integer docId, @Param("id") Integer id, @Param("docType") DocTypeEntity docType, @Param("dbName") String dataIndex);
    <select id="selImageInfo" resultType="java.lang.Object">SELECTFile_Images.fi_ImageFROM ${docType.tableName},File_ImagesWHERE ${docType.tableName}.${docType.uniqueKey} = #{id}and doc_id = #{docId}and ${docType.tableName}.${dbName} = File_Images.fi_Id</select>

查询结果返回Object类型,网上有说使用byte[]作为返回值,我使用的时候报错:

[B cannot be cast to [Ljava.lang.Object;"表示尝试将一个字节数组(字节数组在Java中表示为byte[])转换成Object数组,但这是不兼容的转换。

②将字节数组转换为base64格式的字符串

Object image = mapper.selImageInfo(docId, id, docType, column.getDataIndex());String base64Encoded = Base64.getEncoder().encodeToString((byte[])image);// ByteArrayInputStream bis = new ByteArrayInputStream((byte[])image);// BufferedImage imageInfo = ImageIO.read(bis);//// // 缩放比例为0.5// double scale = 0.5;//// int targetWidth = (int) (imageInfo.getWidth() * scale);// int targetHeight = (int) (imageInfo.getHeight() * scale);//// BufferedImage resizedImage = new BufferedImage(targetWidth, targetHeight, imageInfo.getType());// Image img = imageInfo.getScaledInstance(targetWidth, targetHeight, Image.SCALE_SMOOTH);// resizedImage.createGraphics().drawImage(img, 0, 0, null);//// // 将图片转换为Base64// ByteArrayOutputStream baos = new ByteArrayOutputStream();// ImageIO.write(resizedImage, "jpg", baos);// byte[] imageBytes = baos.toByteArray();// String base64String = Base64.getEncoder().encodeToString(imageBytes);

将sql返回object变量强转为byte数组,然后转换为base64格式的字符串。

后面注释的代码的进行图片的缩放处理,也可以在前端控制图片的显示大小。

③显示图片

html

    <a-modal v-model:visible="visible" @ok="handleOk"  :hide-cancel="true" ok-text="关闭" width="50%"><div style="height: 500px;"><img class="centered-img" :src="imageSrc" alt="Image from database" /></div></a-modal>

js

const cellClick = async (record: any, columnInfo: any, ev: any) => {
// 当点击的列信息为图片类型并且图片不为空时,则展示图片if(columnInfo.colType == 16 && record[columnInfo.dataIndex]){// 查询图片信息const reqBody = {docId:prop.docId,id:record.id,column:columnInfo}const res = await getImage(reqBody)imageSrc.value = 'data:image/jpg;base64,' +  resvisible.value = true}
}

css

.centered-img {display: block; /* 确保图像作为块级元素显示 */margin: 0 auto; /* 设置左右外边距为自动,实现水平居中 */width: 90%;height: 90%;
}

将 'data:image/jpg;base64,'和后端传递的base64格式的字符串进行拼接,设置到img的src属性中,然后设置css控制显示图片的大小

3.总结

imageIO的使用

Java ImageIO 类详解-CSDN博客

http://www.yayakq.cn/news/888413/

相关文章:

  • 快捷的网站建设软件邯郸做网站流程
  • 网站开发课题研究背景做旅游网站怎么样
  • 三亚房产网站建设类似于微博网站怎么做的
  • 我爱深圳网站设计网上超市
  • 网上申请个人营业执照网站wordpress 模特模板
  • 初学者学做网站怎么学wordpress主题--ux
  • 怎么用动图做网站背景中小企业网站建设与管理
  • 地方网站盈利模式济南天桥区网站建设
  • 北京做网站的大公司运城市做网站价格
  • 加盟凡科建站厦门首屈一指网站建设
  • 广州网站建设哪个平台好编程培训加盟
  • 网站有些什么内容模版和模板的区别
  • 即墨网站建设地址网站网站的建设
  • wordpress标签栏淘宝seo是什么意思啊
  • 微信公众平台号登录官网seo工具查询
  • 做网站让用seo刷新是哪个键wordpress 子页面 404
  • 哪些网站做平面单页好看网架加工方案
  • 云南网站推广个人网站的类型
  • 哪些网站的做的好看的图片php做网站一般用什么软件
  • 新品发布会活动方案西安seo交流
  • 昭通网站开发大淘客网站开发
  • 北京网站seo费用专门做衣服特卖的网站
  • IT男网站建设怎么选wordpress模板
  • 深圳网络推广网站推广网站加密传输怎么做
  • 成都做网站多少钱建网站开发
  • 肇庆企业网站建设视频网站程序
  • 南沙营销网站建设做采购常用的几个网站
  • 做旅游网站的需求分析报告百度指数的主要用户是
  • 荥阳建设网站网站各页面
  • 精神文明地方联盟网站建设注册公司怎么注销