亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

文件類中定義內容 類型為 File可以嗎

public class Files {
?? ?private String file_id;
?? ?private String file_name;
?? ?private File file_details;

}

public class FileAction {
?? ?
?? ?public static void fileUpdata(Files srcFile) throws Exception{
?? ??? ?Connection conn =DBUtil.getDBConnection();
?? ??? ?if(!srcFile.getFile_details().exists()){
?? ??? ??? ?throw new IllegalArgumentException("文件:"+srcFile.getFile_details()+"不存在");
?? ??? ?}
?? ??? ?if(!srcFile.getFile_details().isFile()){
?? ??? ??? ?throw new IllegalArgumentException(srcFile.getFile_details()+"不是文件");
?? ??? ?}
?? ??? ?FileInputStream is = new FileInputStream(srcFile.getFile_details());
?? ??? ??? ?String sql="" +"insert into files (file_name,file_details)? values(?,?) "+" ";
?? ??? ??? ?PreparedStatement ptmt=conn.prepareStatement(sql);
?? ??? ??? ?ptmt.setString(1, srcFile.getFile_name());
?? ??? ??? ??? ?
?? ??? ??? ?ptmt.setBlob(2, is);;
?? ??? ??? ?ptmt.execute();
?? ??? ??? ?is.close();
?? ?}
}

public static void main(String[] args) {
?? ??? ?
?? ??? ?UserAtion ation = new? UserAtion();
?? ??? ?FileAction? fileAtion = new FileAction();
?? ??? ?Users uu = new Users();
?? ??? ?Files ff= new Files();
?? ??? ?
?? ??? ?ff.setFile_name("ying");
?? ??? ?ff.setFile_details(new File("E:\\imooc\\test.doc"));
?? ??? ?
?? ??? ?try {
?? ??? ??? ?fileAtion.fileUpdata(ff);
?? ??? ?} catch (Exception e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}

這樣寫會有一個報錯:

Exception in thread "main" java.lang.AbstractMethodError: Method com/mysql/jdbc/PreparedStatement.setBlob(ILjava/io/InputStream;)V is abstract
?? ?at com.mysql.jdbc.PreparedStatement.setBlob(PreparedStatement.java)
?? ?at imooc.combat.action.FileAction.fileUpdata(FileAction.java:29)
?? ?at Test.Test.main(Test.java:27)

哪里有問題嗎?


正在回答

1 回答

當數據庫字段為blob類型時,必須使用PreparedStatement中的setBinaryStream(int,InputStream,int)方法;當數據庫字段為longblob類型時,必須使用PreparedStatement中的setBinaryStream(int,InputStream,long)方法。

0 回復 有任何疑惑可以回復我~
#1

阿非利加 提問者

非常感謝!
2017-03-03 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

文件類中定義內容 類型為 File可以嗎

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號