精华内容
下载资源
问答
  • 图片存取数据库(java)

    2021-03-09 04:06:53
    } } //图片保存到数据库 public boolean storeImg(String strFile,String orderID,String detailID){ boolean written = false; if (con == null) initDB(); else { int id = 0; File file = new File(strFile); ...

    private String dbDriver;

    private String dbURL;

    private String dbUser;

    private String dbPassword;

    private Connection con;

    private PreparedStatement ps;

    private ResultSet rs;

    dbDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

    dbURL = "jdbc:sqlserver://192.168.99.18:1433;DatabaseName =pmmsysdb";

    dbUser = "pmmteam1";

    dbPassword = "123";

    public void initDB() {//初始化数据库连接

    try {

    // Load Driver

    Class.forName(dbDriver).newInstance();

    // Get connection

    con = DriverManager.getConnection(dbURL,dbUser, dbPassword);

    }

    catch (ClassNotFoundException e) {

    System.out.println(e.getMessage());

    }

    catch (SQLException ex) {

    // handle any errors

    System.out.println("SQLException: " + ex.getMessage());

    System.out.println("SQLState: " + ex.getSQLState());

    System.out.println("VendorError: " + ex.getErrorCode());

    }

    catch (Exception e) {

    System.out.println(e.getMessage());

    }

    }

    //图片保存到数据库

    public boolean storeImg(String strFile,String orderID,String detailID){

    boolean written = false;

    if (con == null)

    initDB();

    else {

    int id = 0;

    File file = new File(strFile);

    FileInputStream fis = null;

    try {

    fis = new FileInputStream(file);

    ps = con.prepareStatement("update pmm_sofapopOrderDetail set picture=? where orderId=? and detailId=?");

    ps.setBinaryStream(1, fis, (int) file.length());

    ps.setString(2, orderID);

    ps.setString(3, detailID);

    ps.executeUpdate();

    written = true;

    }catch (SQLException e) {

    written = false;

    System.out.println("SQLException: "+ e.getMessage());

    System.out.println("SQLState: "+ e.getSQLState());

    System.out.println("VendorError: "+ e.getErrorCode());

    e.printStackTrace();

    }catch(IOException ioe){

    ioe.printStackTrace();

    }finally {

    try {

    ps.close();

    }

    catch (SQLException ex) {

    }

    try {

    fis.close();

    }

    catch (IOException ex1) {

    }

    // close db con

    try {

    con.close();

    }

    catch (SQLException ex2) {

    }

    }

    }

    return written;

    }

    //从数据库下载图片

    public InputStream showImg(String orderID,String detailID) {

    InputStream in = null;

    try{

    if (con == null) initDB();

    ps = con.prepareStatement(

    "select picture from pmm_sofapopOrderDetail where orderid=? and detailid=?");

    ps.setString(1, orderID);

    ps.setString(2, detailID);

    rs = ps.executeQuery();

    rs.next();

    in = rs.getBinaryStream("picture");

    rs.close();

    con.close();

    }catch(SQLException s){

    try {

    rs.close();

    con.close();

    }

    catch (SQLException ex) {

    ex.printStackTrace();

    }

    s.printStackTrace();

    }

    return in;

    }

    InputStream is = showImg(dm.getString("orderid", i).trim(),                                 dm.getString("detailid", i)); //从数据库下载图片        File file = new File(fileName);        RandomAccessFile rFile = null;        try {          rFile = new RandomAccessFile(file, "rw");          rFile.seek(0);          byte bytes[] = new byte[1024];          int ch=0;          while((ch=is.read(bytes))!=-1)            rFile.write(bytes,0,ch);           rFile.close();         }        catch (Exception ex) {          ex.printStackTrace();        }

    展开全文
  • 这篇文章主要介绍了如何基于java向mysql数据库存取图片,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下学mysql的时候都是做个表格,放的也都是文字内容,虽然...

    这篇文章主要介绍了如何基于java向mysql数据库中存取图片,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    学mysql的时候都是做个表格,放的也都是文字内容,虽然我知道长篇的文章和图片或者视频的都是用过文件夹的方式存储的,再讲文件路径存进数据库中。但还是想试试直接往mysql数据库中存取图片。这里我用的是java语言和jdbc实现的

    mysql数据库中有一个类型是Blob类型,这是一个二进制类型,通常我们会将图片或音像文件转成二进制再存入数据库中,Blob分为以下几种:

    TinyBlob 最大 255

    Blob 最大 65K

    MediumBlob 最大 16M

    LongBlob 最大 4G

    除了jdbc的连接以外,我们需要用到文件的输入、输出流。实现两个方法,一个方法向数据库中存图像,另一个方法从数据库中读取图像并存在电脑本地

    import java.io.*;

    import java.sql.*;

    import java.sql.DriverManager;

    import java.sql.ResultSet;

    import java.sql.SQLException;

    import java.util.Scanner;

    public class Database {

    //JDBC驱动名

    String JDBC_DRIVER = "com.mysql.jdbc.Driver";

    //数据库URL:这里的tt是数据库名称

    String JDBC_URL = "jdbc:mysql://localhost:3306/daImage?useSSL=false&serverTimezone=UTC";

    // 数据库的用户名与密码

    String USER = "root";

    String PASS = "admin123";

    //通过DriverManager类获得该连接对象才能访问数据库

    Connection connection = null;

    // 通过Connection获得该结果对象用于执行静态的SQL语句

    // Statement statement = null;

    PreparedStatement preparedStatement = null;

    String path;

    FileInputStream fileInputStream;

    Database() {

    // 注册JDBC驱动

    try {

    Class.forName(JDBC_DRIVER);

    // 数据库的连接:通过DriverManager类的getConnection方法,传入三个参数:数据库URL、用户名、用户密码,实例化connection对象

    connection = DriverManager.getConnection(JDBC_URL, USER, PASS);

    } catch (ClassNotFoundException e) {

    e.printStackTrace();

    } catch (SQLException e) {

    e.printStackTrace();

    }

    }

    public void add() {

    // 定义数据库查询语句:查询aa表中的name、sex两列数据

    String sql = "insert into taImage values(?,?,?) ";

    // 读取图片,图片放在电脑本地,所以我这里手动复制了路径

    File file = new File("/Users/liuliu/Desktop/vv.jpeg");

    try {

    FileInputStream fi = new FileInputStream(file);

    preparedStatement = connection.prepareStatement(sql);

    preparedStatement.setInt(1, 2);

    preparedStatement.setString(2, "图片一");

    preparedStatement.setBlob(3, fi);

    // 执行查询语句

    int f = preparedStatement.executeUpdate();

    if (f > 0) {

    System.out.println("插入成功");

    } else {

    System.out.println("插入失败");

    }

    preparedStatement.close();

    connection.close();

    } catch (SQLException e) {

    e.printStackTrace();

    } catch (FileNotFoundException e) {

    e.printStackTrace();

    }

    }

    public void select() {

    Blob get_image;

    String sql = "select* from taImage";

    try {

    // 将读取到的图片存放到指定的路径中

    FileOutputStream fileOutputStream = new FileOutputStream("/Users/liuliu/Desktop/bb.jpg");

    preparedStatement = connection.prepareStatement(sql);

    ResultSet resultSet = preparedStatement.executeQuery();

    while (resultSet.next()) {

    get_image = resultSet.getBlob("photo");

    // 将读取到的Blob对象转成字节流

    inputStream = get_image.getBinaryStream();

    int a;

    byte b[] = new byte[1014];

    while ((a = inputStream.read(b)) != -1) {

    fileOutputStream.write(b, 0, a);

    }

    }

    } catch (SQLException e) {

    e.printStackTrace();

    } catch (FileNotFoundException e) {

    e.printStackTrace();

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    }

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

    本文标题: 如何基于java向mysql数据库中存取图片

    本文地址: http://www.cppcns.com/ruanjian/java/299609.html

    展开全文
  • 提供JAVA存取数据库能力的包是 ( )。

    千次阅读 2021-03-06 21:00:56
    提供JAVA存取数据库能力的包是 ( )。答:java.sqlI feel so excited! At this time tomorrow morning, I ____ to Shanghai.答:will by flying下列哪些蛋白质不含血红素答:铁硫蛋白下面不属于儿童诗基本形式的是(??...

    提供JAVA存取数据库能力的包是 ( )。

    答:java.sql

    I feel so excited! At this time tomorrow morning, I ____ to Shanghai.

    答:will by flying

    下列哪些蛋白质不含血红素

    答:铁硫蛋白

    下面不属于儿童诗基本形式的是(????? )。

    答:摇篮曲

    When?writing?a?letter,?the?writer?should?put?the?letter?date?in?the?upper?left?corner?of?the?letter?body.?????????????????????????????????????????(????)

    答:对

    竖直角和地面高差之间成正比例关系

    答:×

    幼儿对黑暗的恐惧大部分是源于他的

    答:想象

    绿松石为一种含水铜铝磷酸盐的隐晶质矿物集合体

    答:对

    我国第一颗原爆炸成功是在哪一年

    答:1964

    判断下面说法是否正确。对学术流派、作品和观点的批评、讨论、商榷、回应、争鸣,是学术批评的主要内容

    答:正确

    某一般纳税人企业,采购材料发生的买价为1000元,运杂费200元,增值税进项130元,则“在途物资”账户应计金额是()。

    答:1200

    中国大学MOOC: 15. 深大断裂的深度上限………………()

    答:10-15km

    采用分段汇流排供电的方式用于______

    答:主机的两台冷却水泵

    呼吸是指血液在肺部与外界环境之间的气体交换过程

    答:×

    The expression “Jesus Christ” is to express our_________.

    答:surprise

    若一个栈以向量V[1..n]存储,初始栈顶指针top为n+1,则下面x入栈的正确操作是

    答:top=top-1; V[top]=x

    礼源乎情。()

    答:√

    which of the following choice is not true about public speaking ?

    答:Public speaking is of little use in our daily life

    人权概念的产生要早于公民权。()

    答:×

    ?交流感应电动机的定子主要由定子铁芯、定子绕组和机座三部分组成

    答:√

    :行政道德是所有社会组织成员必须遵循的行为规范。( )

    答:错误

    提供JAVA存取数据库能力的包是 ( )。

    展开全文
  • import java.io.*;import java.sql.*;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.Scanner;public classDatabase {//JDBC驱动名String JDBC_DRIVER = ...

    import java.io.*;import java.sql.*;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.Scanner;public classDatabase {//JDBC驱动名

    String JDBC_DRIVER = "com.mysql.jdbc.Driver";//数据库URL:这里的tt是数据库名称

    String JDBC_URL = "jdbc:mysql://localhost:3306/daImage?useSSL=false&serverTimezone=UTC";//数据库的用户名与密码

    String USER = "root";

    String PASS= "admin123";//通过DriverManager类获得该连接对象才能访问数据库

    Connection connection = null;//通过Connection获得该结果对象用于执行静态的SQL语句//Statement statement = null;

    PreparedStatement preparedStatement = null;

    String path;

    FileInputStream fileInputStream;

    Database() {//注册JDBC驱动

    try{

    Class.forName(JDBC_DRIVER);//数据库的连接:通过DriverManager类的getConnection方法,传入三个参数:数据库URL、用户名、用户密码,实例化connection对象

    connection =DriverManager.getConnection(JDBC_URL, USER, PASS);

    }catch(ClassNotFoundException e) {

    e.printStackTrace();

    }catch(SQLException e) {

    e.printStackTrace();

    }

    }public voidadd() {//定义数据库查询语句:查询aa表中的name、sex两列数据

    String sql = "insert into taImage values(?,?,?) ";//读取图片,图片放在电脑本地,所以我这里手动复制了路径

    File file = new File("/Users/liuliu/Desktop/vv.jpeg");try{

    FileInputStream fi= newFileInputStream(file);

    preparedStatement=connection.prepareStatement(sql);

    preparedStatement.setInt(1, 2);

    preparedStatement.setString(2, "图片一");

    preparedStatement.setBlob(3, fi);//执行查询语句

    int f =preparedStatement.executeUpdate();if (f > 0) {

    System.out.println("插入成功");

    }else{

    System.out.println("插入失败");

    }

    preparedStatement.close();

    connection.close();

    }catch(SQLException e) {

    e.printStackTrace();

    }catch(FileNotFoundException e) {

    e.printStackTrace();

    }

    }public voidselect() {

    Blob get_image;

    String sql= "select* from taImage";try{//将读取到的图片存放到指定的路径中

    FileOutputStream fileOutputStream = new FileOutputStream("/Users/liuliu/Desktop/bb.jpg");

    preparedStatement=connection.prepareStatement(sql);

    ResultSet resultSet=preparedStatement.executeQuery();while(resultSet.next()) {

    get_image= resultSet.getBlob("photo");//将读取到的Blob对象转成字节流

    inputStream =get_image.getBinaryStream();inta;byte b[] = new byte[1014];while ((a = inputStream.read(b)) != -1) {

    fileOutputStream.write(b,0, a);

    }

    }

    }catch(SQLException e) {

    e.printStackTrace();

    }catch(FileNotFoundException e) {

    e.printStackTrace();

    }catch(IOException e) {

    e.printStackTrace();

    }

    }

    }

    展开全文
  • import java.io.*;import java.sql.*;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.util.Scanner;public class Database {//JDBC驱动名String JDBC_DRIVER =...
  • 文章目录前言:代码部分:第一步导入依赖:第二步 :配置typeHandler第三步:创建实体类:前言 我的数据库:实体类的创建:就和数据库对应就完事第四步:配置yaml 把你写的typehandler扫描:第四步:写xml:补充:...
  • 关键字:mysql jsp 图片存取为了使用JSP灵活,需要把各种文件储存到数据库中,然后需要的时候把它读取出来显示到客户端。这些文件包括音乐,图片,文本等,人们统称为二进制文件。首先,二进制文件储存到数据库的...
  • 1 MySQL存储大容量的二进制文件的格式是blob,其实除了图片还可以存别的2 要向数据库存储二进制的文件一定要把要存储的数据转换成二进制流废话就不多说了,大家看看代码很容易明白,先来看一个app程序,当然首先您要...
  • 背景最近在做一个java桌面应用的时候,考虑到要保存一些数据。而我需要存储的类,其中有一些变量是object类型的,使用时需要动态解析。这就给存入数据库带来了一些麻烦。于是,我考虑把整个对象直接存入数据库java...
  • sqlite数据库存取图片信息。存储图片:bitmapprivate byte[] getIconData(Bitmap bitmap){int size = bitmap.getWidth()*bitmap.getHeight()*4;ByteArrayOutputStream out = new ByteArrayOutputStream(size);try {...
  • 一、数据库中的日期数据类型数据库中的日期数据类型有四种:date、datetime、timestimp、time。date类型只保存年月日,不保存时分秒,datetime和timestimp保 存年月日时分秒,time只保存时分秒。数据库字段值进行...
  • 展开全部packageshop.car.control...importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequ...
  • 项目涉及的数据库表并不多,但每个select、insert、update和delete都去手动拼接字符串,是很低效的,尤其在时常要修改结构的情况下。开发的一个目标就是自动化,即能自动实现的事情就不要手动去做;还有一个原则是...
  • 这里还得在D盘放一张111.jpg的图片,然后运行StoreBLOB.java,再运行GetBLOB.java,最后再查看D盘,多了一张222.jpg. 我自己改的, 存入操作: package com.ibm.jdbc; import java.io.*; import java.sql.*; public ...
  • 2014华为Java笔试题+数据库

    千次阅读 2021-03-05 17:38:33
    2014华为Java笔试题+数据库题一、 单项选择题1.Java是从( )语言改进重新设计。A.Ada B.C++ C.Pasacal D.BASIC 答案:B2.下列语句哪一个正确( )A. Java程序经编译后会产生machine codeB. Java程序经编译后会产生byte...
  • 一、使用JDBC向数据库存取小说 想要在数据库中读写大文本或二进制类型的数据,就必须综合使用PreparedStatement和IO流的相关技术。 在MySQL等数据库中,TEXT数据类型可以存储1-65535个字符的不确定定长度的字符串...
  • 数据库中日期是datetime类型的,我需要把当前日期以2008-5-1413:25:57这样的时间格式把当前日期存入数据库,目前我只能实现日期,不能获得时间,存入的时间是这样的:20008-5-190...我数据库中日期是datetime...
  • importjava.sql.CallableStatement;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importoracle.jdbc.OracleTypes;public classTest1 {public static voidma...
  • java 读取图片存到本地base64 保存路径到数据库 通过http访问
  • HSQLDBHSQLDB(Hypersonic SQL)是纯Java开发的关系型数据库,并提供JDBC驱动存取数据。支持ANSI-92标准SQL语法。而且他占的空间很小。大约只有160K,拥有快速的数据库引擎。AxionAxion是一个小型,快速,开源的关系型...
  • 1、根本概念及原理由上面的剖析能够看出,疑问的本源就在于对数据库衔接资源的低效办理。咱们晓得,关于共享资源,有一个很闻名的描绘方法:资源池(ResourcePool)。该方法正是为了处置资源的频频分配?开释所形成的...
  • 假设mysql中test数据库中有个表式score,有数据,我只取第一列的数据出来:public void mysqlConnection(){try {Class.for...//数据库驱动String url = "jdbc:mysql://localhost:3306/test";//数据库链接地址String...
  • 一个向数据库存取image文件的jsp程序我在程序代码里贴了向Mysql数据库写入image代码的程序,可是好多人都是Java的初学者,对于这段代码,他们无法将它转换成jsp,所以我在这在写一下用jsp怎样向数据库写入图像文件。...
  • 图片,视频等等。blob是一个二进制大对象,可以容纳可变数量的数据。因为是二进制对象,所以与编码方式无关。有4种blob类型:tinyblob、blob、mediumblob和longblob。它们只是可容纳值的最大长度不同。四种字段...
  • java关系数据库

    2021-03-11 11:12:49
    一、JDBC基础JDBC是Java应用与数据库管理系统进行交互的标准API,包括两个包:核心API---java.sql和扩展的API---javax.sql。应用程序通过核心API的接口实现数据库连接和数据处理,其主要接口如下:接口名称功能java....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 83,304
精华内容 33,321
关键字:

java数据库存取图片

java 订阅