package info.itlanguageexpress.LargeObject;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
* 这里不仅仅是word文件,所有大对象文件都适用
* @author Administrator
*
*/
public class MySqlLargeObjectAccess {
public static String DRIVER
= "org.gjt.mm.mysql.Driver";
// JDBC:mysql://localhost|IP:端口号/数据库名
public static String URL = "JDBC:mysql://localhost:3306/JustTest";
// SERVER NAME
public static String USER
= "root";
// PASS WORD
public static String PASSWORD
= "your password";
try {
Class.forName(DRIVER);
insertWordFileToMySql(conn);
fetchWordFileFromMySql(conn);
ex.
printStackTrace(System.
out);
} finally {
try {
conn.close();
}
}
}
/**
* 存word
* @param conn
* @throws SQLException
* @throws IOException
*/
public static void insertWordFileToMySql
(Connection conn
)
.prepareStatement("insert into wordInputTest values (?,?)");
// fileName
pstm.setString(1, "docx1");
+ "test1.docx");
// file
pstm.setBinaryStream(2, in, in.available());
pstm.executeUpdate();
pstm.close();
}
/**
* 取word
* @param conn
* @throws SQLException
* @throws IOException
*/
public static void fetchWordFileFromMySql
(Connection conn
)
.prepareStatement("select * from wordInputTest where fileName = ?");
pstm.setString(1, "docx1");
int count = 1;
while(rs.next()) {
//file为存储文件列的name
byte[] b = new byte[1024];
int len = 0;
while ((len = in.read(b)) != -1) {
out.write(b, 0, len);
out.flush();
}
out.close();
in.close();
count++;
}
rs.close();
pstm.close();
}
}
//java/5715