@Test
//将数据存入到数据库中
public void dataWrite() throws SQLException, IOException{
Connection con=JdbcUtils.getConnection();
String sql="insert into tab values(?,?,?)";
PreparedStatement statement=con.prepareStatement(sql);
statement.setInt(1, 1);
statement.setString(2, "Beautiful In White.mp3");//文件名称
// InputStream in=new FileInputStream("D:\\music\\Shane Filan - Beautiful In White (Demo).mp3");//得到in的输入对象
// statement.setBlob(3, in);//将流对象保存到数据库中//失败告终
//将文件变为字符数组
statement.executeUpdate();
//将数据存入到数据库中
public void dataWrite() throws SQLException, IOException{
Connection con=JdbcUtils.getConnection();
String sql="insert into tab values(?,?,?)";
PreparedStatement statement=con.prepareStatement(sql);
statement.setInt(1, 1);
statement.setString(2, "Beautiful In White.mp3");//文件名称
// InputStream in=new FileInputStream("D:\\music\\Shane Filan - Beautiful In White (Demo).mp3");//得到in的输入对象
// statement.setBlob(3, in);//将流对象保存到数据库中//失败告终
//将文件变为字符数组
byte[] bytes=IOUtils.toByteArray(new FileInputStream("D:/music/Beautiful In White.mp3"));//用工具类将输入流转化为字符数组
Blob blob=new SerialBlob(bytes);
statement.setBlob(3, blob);statement.executeUpdate();
}
存入的时候可能会出现statement.executeUpdate();这一行报错的情况
将mysql路径下的my.in配置文件中加上
max_allowed_packet = 20M
可能系统会拒绝你的访问
可以先将my.ini复制出来在外面进行修改,修改之后在复制进去
完事之后关闭mysql 以管理员的身份运行cmd 输入net stop mysql
之后输入 net start mysql
上面一部相当于完成配置文件的更新