<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk" %>
<% @page import="java.sql.*" %>
<% @page import="java.text.*" %>
<% @page import="java.io.*" %>
<% @page import="java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>Insert title here</title>
</head>
<body>
<% try{
String id=request.getParameter("id");
String file=request.getParameter("file");
out.println(id);
out.println(file);
FileInputStream str =new FileInputStream(file);
out.print(str.available());
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection conn;
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/testpic","root","123");
String sql="INSERT INTO test(id,pic)values(?,?)";
PreparedStatement pstmt=conn.prepareStatement(sql);
pstmt.setString(1,id);
pstmt.setBinaryStream(2,str,str.available());
pstmt.execute();
out.println("you hava success in insert file!");
}catch(Exception e){
out.println(e);
}
%>
</body>
</html>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
数据库连接有不能被正常关闭的可能。改正:在try前声明conn = null变量,在try-catch程序块中获得数据库连接并赋值给conn变量,最后在try-catch对应的finally程序中判断conn != null 时执行conn.close() 关闭数据库连接动作。######哦,一般只在数据库和表上设置使用相同的编码######那个数据类型是数据库用来存比较大的数据流的,不用这个根本没法弄,。问题已经解决了,主要是mysql的编码问题######没用过 你用的这个mediumblob数据类型,建议用比较常用的数据类型######没有用啊,数据库是链接了的,但是就是插入不了图片, 可以插入字符串。 是不是我的表出了问题。 CREATE TABLE test8
( id
char(100) DEFAULT NULL, pic
mediumblob ) ENGINE=InnoDB DEFAULT CHARSET=utf8