java缓存读取图片

老师布置了任务,需要把数据库中的图片一缓存的形式读出,不要说什么数据库中路劲,图片整体较大,在给别人使用时不现实。

关键代码:for(int i=0;i<1;i++){

downloadDB(bi);

pm[i]=new paintimage(bi);

}

public void downloadDB(BufferedImage bi){

try{

/* String s="c:\\downloadDB\\"+i+".png";

File file=new File(s);

FileOutputStream fos=new FileOutputStream(file);*/

InputStream in=null;

String url="jdbc:mysql://192.168.**.***:3306/de";

Class.forName("com.mysql.jdbc.Driver");

Connection con=DriverManager.getConnection(url,"root","***");

String sql="select * from campusimage";

Statement st=con.createStatement();

ResultSet rs=st.executeQuery(sql);

for(int j=0;j<1;j++)

rs.next();

int m;

if(rs.next())

in=rs.getBinaryStream(1);

/*while((m=in.read())!=-1)

fos.write(m);*/

BufferedInputStream is=new BufferedInputStream(in);

bi=ImageIO.read(is);

System.out.println("00000000000");

rs.close();

st.close();

con.close();

}catch(Exception e){e.printStackTrace();}

}

class paintimage extends JPanel{

//ImageIcon icon=null;

Image ima=null;

paintimage(BufferedImage bi){

/*String s1="c:\\downloadDB\\"+i+".png";

icon=new ImageIcon(s1);

ima=icon.getImage();*/

ima=(Image)bi;

setBounds(0,0,700,600);

System.out.println("1111111111");

}

public void paint(Graphics g){

g.drawImage(ima,0,0,700,600,null);

System.out.println("2222222222");

}

}

求指教,我会出的是空白图。

java

缓存

图片

数据库

mysql

分享到:

------解决方案--------------------

如果读出来是16进制字符串的话,

16进制字符串-》byte数组-》流-》文件

public class ImgHelper {

public static void getImg(String hexString) {

byte[] b = ByteHelper.hexStringToBytes(hexString);

InputStream is = ByteHelper.byte2Input(b);

createFile(is, new File("D://pp.jpg"));

}

//生成图像文件

public static void createFile(InputStream is, File targetFile) {

BufferedInputStream inBuff = null;

BufferedOutputStream outBuff = null;

try {

// 新建文件输入流并对它进行缓冲

inBuff = new BufferedInputStream(is);

// 新建文件输出流并对它进行缓冲

try {

outBuff = new BufferedOutputStream(new FileOutputStream(

targetFile));

// 缓冲数组

byte[] b = new byte[1024 * 5];

int len;

while ((len = inBuff.read(b)) != -1) {

outBuff.write(b, 0, len);

}

// 刷新此缓冲的输出流

outBuff.flush();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} finally {

// 关闭流

try {

if (inBuff != null)

inBuff.close();

if (outBuff != null)

outBuff.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}

public class ByteHelper {

public static byte[] hexStringToBytes(String hexString) {

if (hexString == null

------解决方案--------------------

hexString.equals("")) {

return null;

}

hexString = hexString.toUpperCase();

int length = hexString.length() / 2;

char[] hexChars = hexString.toCharArray();

byte[] d = new byte[length];

for (int i = 0; i

int pos = i * 2;

java 图片缓存工具,java缓存读取图片解决方案相关推荐

  1. java画笔能画girl图吗_小巧的国产JAVA特效制作工具?Java Girl

    小巧的国产JAVA特效制作工具?Java Girl 作者:未知    文章来源:www.jspcn.net 发布日期:2005年01月19日 在推出gifgirl后不久,任毅的又一免费软件呼吸小秘书之 ...

  2. python批量读取图片gps位置_某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置!...

    原标题:某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置! 1. python读取图片exif属性中的GPS信息 智能手机或平板如果在拍照时开启定位服务,照片中就会记录拍照位置信息和 ...

  3. cv2 和 matplotlib.pyplot 和 PIL.Image 读取图片方式对比【Python读取图片】

    文章目录 import matplotlib.pyplot as plt 和 cv2 读取图像对比 PIL 和 cv2 读取图片对比 mxnet.image.imread 读取图片 PIL 和 tor ...

  4. Java实现七牛云上传图片、读取图片链接

    Java后端实现七牛云上传图片.读取图片链接 添加依赖 <!--七牛云sdk--><dependency><groupId>com.qiniu</groupI ...

  5. Java服务器上显示图片问题_java,_服务器读取图片到jsp显示问题,java - phpStudy

    服务器读取图片到jsp显示问题 我要从服务器读个图片显示到jsp jsp页面 后台 @RequestMapping(value = "getPic", method = Reque ...

  6. android 聊天背景图片,Android 实现从本地读取图片更改聊天背景

    现在很多社交软件都有这个功能,因为本次我参加一个比赛也是要做一个社交软件,所以我就"画蛇添足"的添加了这个一个功能,因为我也是个Android初学者,所以说修改bug浪费了我至少1 ...

  7. 某少儿不宜网站图片拍摄位置分析,Python批量读取图片GPS位置!

    1. python读取图片exif属性中的GPS信息 智能手机或平板如果在拍照时开启定位服务,照片中就会记录拍照位置信息和拍摄时间.如果将原始照片直接发送发布到网上,无意中就泄漏了自己的位置信息,有恶 ...

  8. 从oracle中读取图片,从oracle数据库中读取图片,在jsp?

    servlet:(jsp调用servlet显示图片,servlet如下) public void doGet(HttpServletRequest request, HttpServletRespon ...

  9. python如何导入图片imread_OpenCV 使用imread()函数读取图片的六种正确姿势

    经常看到有人在网上询问关于imread()函数读取图片失败的问题.今天心血来潮,经过实验,总结出imread()调用的四种正确姿势. 通常我要获取一张图片的绝对路径是这样做的:在图片上右键--属性-- ...

最新文章

  1. java for stl_STL迭代器
  2. 使用Global.asax在ASP.NET中记录错误日志
  3. C++末尾匹配(C与C++解决)
  4. SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法...
  5. Mysql 重做日志及与二进制日志的区别
  6. StringTokenizer的使用
  7. php5.3 gd库,php5.3动态编译gd库 zlib扩展 mcrypt扩展 mysqli扩展
  8. java keydown_键盘事件keydown、keypress、keyup随笔整理总结
  9. 粒子滤波(PF)原理详解
  10. pandas_计算年化收益率
  11. allegro cadence PCB中出光绘文件遇到database has errors:artwork generation cancled.please run dbdoctor问题的解决办法
  12. IPad 如何使用蓝牙鼠标
  13. WORD插入摄氏华氏度及换算
  14. FlEAPHP + Smarty 进行php开发
  15. 【Android开发】App消息中心构建
  16. 5G+急诊救治 - 5G救护车远程会诊智慧医疗解决方案
  17. 智力题------扔硬币吃苹果
  18. 米特科技零信任新品 MetelTrust 智能 CPE 正式发布!
  19. 蓝牙是局域物联网最佳方案?「桂花网」获千万美元B+轮融资
  20. 2022登高架设考题及在线模拟考试

热门文章

  1. Spring原理只要看这篇文章就够了
  2. Linux进程的概念笔记
  3. STM32F103ZET6 点灯的三种操作方式(库函数、寄存器、位操作)
  4. Linux 进程、父进程、子进程
  5. Redis List 类型操作及常用命令
  6. Android 第十二课 使用LitePal操作数据库(记得阅读最后面的注意事项哦)
  7. 全库模式 用户模式 表模式_暗模式,亮模式和用户的故事
  8. 一名运营,自学一年前端,成功入职杭州某独角兽企业,他的面试经验和学习方法等分享...
  9. VMware虚拟机12安装linux系统
  10. OpenStack 计算节点删除