详解JAVA生成将图片存入数据库的sql语句实现方法

详解JAVA生成将图片存入数据库的sql语句实现方法

实现代码:

注释很清楚,不在重述~

public class Image2Hex {
  public static void main(String[] args) {
    try{
      //存放图片的文件夹
      File list = new File("d:/qmx");
      File[] lists = list.listFiles();
      String name;
      //生成的语句存放文件
      PrintWriter pw = new PrintWriter(new FileWriter("d:/update.txt"),true);
      FileInputStream fis = null;
      byte[] b;
      for(File file : lists){
        //张三.jpg
        name=file.getName();
        fis = new FileInputStream(file);
        b = new byte[fis.available()];
        fis.read(b);
        pw.println("update sys_userinfo set sign_image =0x" + byte2HexStr(b) + " where realName=\'" + name.substring(0,name.length() - 4) + "\'");
      }
      pw.flush();
      pw.close();
    }catch(Exception e){
      e.printStackTrace();
    }
  }
  /**
   *
   * 描述:byte转字符串
   */
  public static String byte2HexStr(byte[] b) {
    StringBuffer hs = new StringBuffer();
    String stmp="";
    for (int n=0;n< b.length;n++) {
      stmp=(Integer.toHexString(b[n] & 0XFF));
      hs.append((stmp.length() == 1 ? "0" : "") + stmp);
    }
    return hs.toString().toUpperCase();
  }
}
 

现在的项目需要存放用户公司的员工的签名图片,美工做出来几百张图片需要存放到数据库里,于是就写了这么一个将图片读成十六进制并拼写update语句存放到文本文档中的方法,效果还是不错的。

如有疑问请留言或者到本站社区交流讨论,本站关于java开发的文章还有很多,欢迎大家搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • Java从数据库中读取Blob对象图片并显示的方法

    本文实例讲述了Java从数据库中读取Blob对象图片并显示的方法.分享给大家供大家参考.具体实现方法如下: 第一种方法: 大致方法就是,从数据库中读出Blob的流来,写到页面中去: 复制代码 代码如下: Connection conn = DBManager.getConnection();   String sql = "SELECT picture FROM teacher WHERE id=1";   PreparedStatement ps = null;   ResultSe

  • Java+mysql本地图片上传数据库及下载示例

    做一个将本地图片上传到mysql数据库的小实例,顺便也下载下来到桌面检测是否上传成功. 在写代码之前得先在数据库中建立image表,用来存储图片. create table image (id int primary key auto_increment , name varchar(30) COMMENT '名称', content mediumblob COMMENT '图片'); 下面直接上代码: package jdbc_imagetest; import java.io.*; impo

  • 详解JAVA生成将图片存入数据库的sql语句实现方法

    详解JAVA生成将图片存入数据库的sql语句实现方法 实现代码: 注释很清楚,不在重述~ public class Image2Hex { public static void main(String[] args) { try{ //存放图片的文件夹 File list = new File("d:/qmx"); File[] lists = list.listFiles(); String name; //生成的语句存放文件 PrintWriter pw = new PrintWr

  • 详解Java使用JDBC连接MySQL数据库

    一:什么是数据库,为什么要有数据库? 数据,数据库,数据库管理系统和数据库系统是与数据库技术密切相关的四个基本概念. 数据库相信大家都耳熟能详了,其实数据库顾名思义就是存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的~ 可能有朋友就要打断我施法了,停停停,我们Java程序猿在IDEA里面和控制台你侬我侬,没有对象new个对象存储在内存JVM的堆上就行了,学数据库干啥啊? 这时候我们就需要了解到:内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运

  • 详解Java Web如何限制访问的IP的两种方法

    前一阵子因为在做项目时碰到了这个功能,现在好好总结一下,至于为什么要限制IP访问,我就不多说了.然后百度了一下,现在主要有两种方式去限制IP访问,第一种是最简单的方便的,第二种是通过过滤器来限制访问.下面我简单介绍一下第一种方式,着重介绍第二种. 第一种方式(Tomcat配置项配置允许或限制IP访问) 这种是最简单的快捷的,主要就涉及Tomcat的server.xml配置. 第一步:找到server.xml文件在哪,在Tomcat的目录下的conf文件夹下. 第二步:打开server.xml文件

  • 详解Java生成PDF文档方法

    最近项目需要实现PDF下载的功能,由于没有这方面的经验,从网上花了很长时间才找到相关的资料.整理之后,发现有如下几个框架可以实现这个功能. 1. 开源框架支持 iText,生成PDF文档,还支持将XML.Html文件转化为PDF文件: Apache PDFBox,生成.合并PDF文档: docx4j,生成docx.pptx.xlsx文档,支持转换为PDF格式. 比较: iText开源协议为AGPL,而其他两个框架协议均为Apache License v2.0. 使用PDFBox生成PDF就像画图

  • 详解java google Thumbnails 图片处理

    在后端开发的过程中,都逃不开与文件传输特别是图片的传输打交道,但是因为现在各种拍照设备发展越来越快,拍出的照片更是越来越清晰,但是照片文件的大小也是越来越大了,手机拍照小则2M大则30M这在网络传输过程中谁顶得住呀!所以在用户发布照片,后端对图像文件进行保存的过程中压缩图像文件是必不可少的一个过程. 而Thumbnails就是一个很好的图像处理工具,他把复杂的图像处理封装的很好,只需要短短的一行代码就能完成对图像的压缩. Thumbnails支持: 指定大小进行缩放 按照比例进行缩放 不按照比例

  • 详解Java的JDBC API的存储过程与SQL转义语法的使用

    正如一个Connection对象创建Statement和PreparedStatement对象,它也创造了CallableStatement对象这将被用来执行调用数据库存储过程. 创建CallableStatement对象: 假设,需要执行以下Oracle存储过程: CREATE OR REPLACE PROCEDURE getEmpName (EMP_ID IN NUMBER, EMP_FIRST OUT VARCHAR) AS BEGIN SELECT first INTO EMP_FIRS

  • 详解java生成json字符串的方法

    例1:将map对象添加一次元素(包括字符串对.数组),转换成json对象一次. 代码: package com.json; //这是使用org.json的程序: import java.util.HashMap; import java.util.Map; import org.json.JSONException; import org.json.JSONObject; public class jsontest { public static void main(String[] args)

  • 详解iOS App中图片的线段涂鸦功能的添加方法

    接下来我们要讲图片的涂鸦,我们分开一点一点拓展,先给图片上划线 创建项目 起名testAddLine 接下来我们在默认生成的ViewController中添加一张图片 待用 同时添加一个按钮 复制代码 代码如下: - (void)viewDidLoad {      [super viewDidLoad];      // Do any additional setup after loading the view, typically from a nib.            UIImag

  • 详解Java编程中线程同步以及定时启动线程的方法

    使用wait()与notify()实现线程间协作 1. wait()与notify()/notifyAll() 调用sleep()和yield()的时候锁并没有被释放,而调用wait()将释放锁.这样另一个任务(线程)可以获得当前对象的锁,从而进入它的synchronized方法中.可以通过notify()/notifyAll(),或者时间到期,从wait()中恢复执行. 只能在同步控制方法或同步块中调用wait().notify()和notifyAll().如果在非同步的方法里调用这些方法,在

  • 详解Java中的线程让步yield()与线程休眠sleep()方法

    线程让步: yield() yield()的作用是让步.它能让当前线程由"运行状态"进入到"就绪状态",从而让其它具有相同优先级的等待线程获取执行权:但是,并不能保证在当前线程调用yield()之后,其它具有相同优先级的线程就一定能获得执行权:也有可能是当前线程又进入到"运行状态"继续运行! 示例: class ThreadA extends Thread{ public ThreadA(String name){ super(name); }

随机推荐

其他