나는 데스크톱 프로그램을 가지고 있으며 다른 형식과 다른 크기의 이미지 파일을 db에 저장해야합니다. 어떤 생각을 어떻게 할 수 있습니까? 아무도 나 좀 도와 줄 수 없어?이미지 파일을 db로 저장하는 방법은 무엇입니까?
-3
A
답변
0
당신은 다음과 같이 바이너리로 변환 으로 데이터베이스에 이미지를 저장 할 수 있습니다
public void saveImage(File file){
try {
String img_id=JOptionPane.showInputDialog("Enter Image ID");
FileInputStream fis=null;
String query="insert into image(image_id,image) values (?,?)";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:image");
PreparedStatement pstm=con.prepareStatement(query);
fis=new FileInputStream(file);
pstm.setString(1, img_id);
pstm.setBinaryStream(2, (InputStream)fis, (int)file.length());
pstm.executeUpdate();
JOptionPane.showMessageDialog(null, "Image Successfully Uploaded to Database");
pstm.close();
con.close();
} catch (Exception ex) {
System.out.println("Exception Occured: "+ex);
}
}
을 그리고 다시 바이너리에서 이미지를 제작하여 검색과 약간의 물리적 위치에 저장 :
public void getSavedImages(){
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:image");
PreparedStatement pstm1 = con.prepareStatement("select * from image");
ResultSet rs1 = pstm1.executeQuery();
while(rs1.next()) {
InputStream fis1;
FileOutputStream fos;
String image_id;
try {
fis1 = rs1.getBinaryStream("image");
image_id=rs1.getString("image_id");
fos = new FileOutputStream(new File(Path to "C:\\" + (image_id) + "Your Extension(.jpg/.gif)"));
int c;
while ((c = fis1.read()) != -1) {
fos.write(c);
}
fis1.close();
fos.close();
} catch (Exception ex) {
System.out.println(ex);
}
}
pstm1.close();
con.close();
} catch (Exception ex) {
System.out.println("Exception Occured:"+ex);
}
}
0
일반적으로 이미지 파일의 주소는 데이터베이스에 저장해야합니다.
같은 결과를 달성하고 데이터베이스가 비대화되지 않습니다. http://en.wikipedia.org/wiki/Binary_large_object
정확한 구현은 데이터베이스 시스템에 따라 다릅니다 BLOB으로
0
.
0
초보 개발자에게는 가장 일반적인 문제입니다. 최상의 솔루션은 ... 이미지를 폴더에 저장하고 데이터베이스에 파일 경로를 저장 한 다음이 파일 경로를 사용하여 파일에 액세스 할 수 있습니다.
관련 문제
- 1. 캔버스 상태를 db로 저장하는 방법은 무엇입니까?
- 2. 이미지 파일을 BMP 형식으로 저장하는 방법은 무엇입니까?
- 3. SQLite DB로 JNLP 파일을 실행하는 방법은 무엇입니까?
- 4. 에뮬레이터에 파일을 저장하는 방법은 무엇입니까?
- 5. 데이터베이스에 파일을 저장하는 방법은 무엇입니까?
- 6. XML 파일을 저장하는 방법은 무엇입니까?
- 7. 파일을 java로 저장하는 방법은 무엇입니까?
- 8. 플렉스 파일을 저장하는 방법은 무엇입니까?
- 9. 파일을 iPhone에 저장하는 방법은 무엇입니까?
- 10. JS로 파일을 저장하는 방법은 무엇입니까?
- 11. LDAP에 파일을 저장하는 방법은 무엇입니까?
- 12. MongoDB에 파일을 저장하는 방법은 무엇입니까?
- 13. 서버에 파일을 저장하는 방법은 무엇입니까?
- 14. 파일을 상위 폴더에 저장하는 방법은 무엇입니까?
- 15. Heroku에 바이너리 파일을 저장하는 좋은 방법은 무엇입니까?
- 16. JFileChooser를 사용하여 파일을 저장하는 방법은 무엇입니까?
- 17. 응용 프로그램에서 이미지 파일을 사용하는 경우 이미지 파일을 저장하는 방법은 무엇입니까?
- 18. 내 sqlite3 db로 채워진 CSV 파일을 작성하는 방법은 무엇입니까?
- 19. DB5 데이터베이스를 Mongo DB로 변환하는 방법은 무엇입니까?
- 20. asp.net mvc에서 이미지를 db로 업로드하는 가장 좋은 방법은 무엇입니까?
- 21. 레일즈 3에 이미지 배열을 저장하는 방법은 무엇입니까?
- 22. 캔버스를 이미지 개체에 저장하는 방법은 무엇입니까?
- 23. 이미지 파일을 가져 오는 방법은 무엇입니까?
- 24. 정적 이미지/파일을 저장하는 네트워크 파일 시스템
- 25. 투명도가있는 png 파일을 저장하는 방법은 무엇입니까?
- 26. 배열에 폴더의 파일을 저장하는 방법은 무엇입니까?
- 27. 파일을 새로운 디렉토리에 저장하는 방법은 무엇입니까?
- 28. xml 파일을 디스크에 저장하는 방법은 무엇입니까?
- 29. 파일을 C++로 디스크에 저장하는 방법은 무엇입니까?
- 30. 업데이트하기 전에 XML 파일을 저장하는 방법은 무엇입니까?
이미지를 데이터베이스에 직접 저장할 수는 없으며 대신 이진 형식을 사용하여 이미지를 db에 저장할 수 있습니다. –