2
Java 응용 프로그램에서 mysql 테이블로 파일을 삽입하려고합니다.예외없이 Mybatis 삽입이 실패합니다.
매퍼에 대한 호출이 예외없이 완료되었지만 결국 테이블에 레코드가 없습니다.
파일 내용을 BLOB 필드에 매핑하는 방식에 문제가있을 수 있습니까?
이 빈입니다 :
public class CustomFile {
private int id;
private String title;
private String fileName;
private String fileType;
private String fileSize;
private byte[] fileContent;
private String fileExtension;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public String getFileType() {
return fileType;
}
public void setFileType(String fileType) {
this.fileType = fileType;
}
public String getFileSize() {
return fileSize;
}
public void setFileSize(String fileSize) {
this.fileSize = fileSize;
}
public byte[] getFileContent() {
return fileContent;
}
public void setFileContent(byte[] fileContent) {
this.fileContent = fileContent;
}
public String getFileExtension() {
return fileExtension;
}
public void setFileExtension(String fileExtension) {
this.fileExtension = fileExtension;
}
}
그리고 이것은 매핑 :
2012-02-04 20:14:20,656 DEBUG java.sql.Connection.debug:27 - ooo Connection Opened
2012-02-04 20:14:22,128 DEBUG java.sql.PreparedStatement.debug:27 - ==> Executing: INSERT INTO file SET Title = ?, File_Name = ?, File_Type = ?, File_Size = ?, File_Content = ?, File_Extension = ?
2012-02-04 20:14:22,135 DEBUG java.sql.PreparedStatement.debug:27 - ==> Parameters: Test(String), 294435318.jpg(String), image/jpeg(String), 10028(String), [email protected](ByteArrayInputStream), image/jpeg(String)
2012-02-04 20:14:30,113 DEBUG java.sql.Connection.debug:27 - xxx Connection Closed
감사 :
<insert id="saveFile" parameterType="CustomFile">
INSERT INTO file SET
Title = #{title},
File_Name = #{fileName},
File_Type = #{fileType},
File_Size = #{fileSize},
File_Content = #{fileContent,jdbcType=BLOB},
File_Extension = #{fileExtension}
</insert>
이가의 log4j 로그입니다!
왜 File 형식을 사용하고 있는지 이해할 수 없습니까? 나머지 애플리케이션은 말할 수 없지만 struts2 파일을 사용하면 인터셉터를 업로드 할 때 struts.apache.org/2.0.14/docs/file-upload.html 이렇게하면 다음과 같이 할 수 있습니다. 일부 파일 내용을 로그 작성기로 덤프하고 struts2 쪽이 좋은지 확인하고 질문에서 삭제하십시오. – Quaternion