jsp 上传图片 mysql_jsp如何上传照片到mysql,再查询在jsp中显示

展开全部

1 mysql存储大容量的二进制文件的格式是longblob ,其实除了图片e69da5e887aa3231313335323631343130323136353331333330336265还可以存别的

CREATE TABLE `abc`.`images` (

`name` varchar(10) NOT NULL,

`changdu` int(10) unsigned NOT NULL,

`content` longblob NOT NULL,

PRIMARY KEY (`name`)

)

ENGINE=InnoDB DEFAULT CHARSET=utf8;

2 要向数据库存储二进制的文件一定要把要存储的数据转换成二进制流

废话就不多说了,大家看看代码很容易明白,先来看一个app程序,当然首先您要在数据库中先建立一个用于保存图片的表和相应的列,

数据格式为blob

package com.lizhe;

import java.io.*;

import java.sql.*;

public class PutImg {

public void putimg() {

try {

Class.forName("org.gjt.mm.mysql.Driver").newInstance();

String url = "jdbc:mysql://localhost/img?user=root&password=root&useUnicode=true&characterEncoding=gbk";

Connection conn = DriverManager.getConnection(url);

Statement stmt = conn.createStatement();

//stmt.execute("insert into imgt (id) values (5)");

stmt.close();

PreparedStatement pstmt = null;

String sql = "";

File file = new File("c:\\blog.jpg");

InputStream photoStream = new FileInputStream(file);

//sql = " UPDATE imgt SET img = ? ";

sql = "INSERT INTO imgtable (img) VALUES (?)";

pstmt = conn.prepareStatement(sql);

pstmt.setBinaryStream(1, photoStream, (int) file.length());

pstmt.executeUpdate();

pstmt.close();

conn.close();

} catch (Exception e) {

e.printStackTrace();

}

}

public static void main(String

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值