이미지 문서를 mongoDB에 저장하고 싶습니다.
자바를 사용하고 있습니다.java를 사용하여 mongoDB에 이미지를 삽입하는 방법은 무엇입니까?
모든 링크 나 제안 사항을 보내 주시면 감사하겠습니다.
이미지 문서를 mongoDB에 저장하고 싶습니다.
자바를 사용하고 있습니다.java를 사용하여 mongoDB에 이미지를 삽입하는 방법은 무엇입니까?
모든 링크 나 제안 사항을 보내 주시면 감사하겠습니다.
이미지와 같은 이진 데이터를 저장하려면 GridFS을 사용하거나 자신 만의 구현을 구현할 수 있습니다. driver 다운로드 및 src/test/com/mongodb/gridfs/GridFSTest.java
보기)
편집 : 오늘 운이 좋다! 나는 완전한 코드를 만들었다;) Enjoy! 작은 (< 1메가바이트) 용
package mongodb.testing.java;
import com.mongodb.*;
import com.mongodb.gridfs.*;
import java.io.*;
public class Main {
public static byte[] LoadImage(String filePath) throws Exception {
File file = new File(filePath);
int size = (int)file.length();
byte[] buffer = new byte[size];
FileInputStream in = new FileInputStream(file);
in.read(buffer);
in.close();
return buffer;
}
public static void main(String[] args) throws Exception {
//Load our image
byte[] imageBytes = LoadImage("C:/Temp/bear.bmp");
//Connect to database
Mongo mongo = new Mongo("127.0.0.1");
String dbName = "GridFSTestJava";
DB db = mongo.getDB(dbName);
//Create GridFS object
GridFS fs = new GridFS(db);
//Save image into database
GridFSInputFile in = fs.createFile(imageBytes);
in.save();
//Find saved image
GridFSDBFile out = fs.findOne(new BasicDBObject("_id" , in.getId()));
//Save loaded image from database into new image file
FileOutputStream outputImage = new FileOutputStream("C:/Temp/bearCopy.bmp");
out.writeTo(outputImage);
outputImage.close();
}
}
글쎄 AFAIK 님, mongodb
에 이미지를 저장할 수 없으므로 이미지에 대한 링크를 저장할 수 있습니다. 이미지가 작 으면 100x100 픽셀과 같이 U가 높지는 않습니다. U는 이미지를 바이너리로 저장하고 개조하고 이미지를 즉석에서 볼 수 있습니다. 그러나 이미지를 렌더링하는 데는 시간이 걸릴 것이므로 링크를 저장하고 해당 이미지를 가져 와서 동적으로 채울 것을 제안합니다.
GridFS를 사용하여 더 큰 이진 객체를 저장할 수 있습니다. 당신이 MongoDB의 새로운 때문에
것은, 한 번 봐 걸릴 :
을 당신은 또한 항상, 내가에 요청할 수 있습니다 또한 mongoDB에 익숙하지 않아서 초보자를 돕는 데 신경 쓰지 않을 것입니다 : D
mongodb에서 GridFS 파일을 일반 문서와 어떻게 연결합니까? 말하자면 큰 이미지를 업로드하고 GridFS에 저장합니다. 파일의 다른 세부 사항을 문서의 모든 모음에 저장합니다. 내가 컬렉션에서 문서를 읽을 때 어떻게 관련 이미지를 검색 할 수 있습니까 ??? –
거기에 API 메서드가 있으면 그것을 모르는 경우 두 값 모두 같은 필드를 사용하여 필드 사이에 링크를 만듭니다. 따라서 첫 번째 컬렉션의 값을 발견하면 값으로 이미지 컬렉션을 쿼리하고 해당 이미지를 찾습니다. – theTuxRacer
이미지 I 이진 필드에 저장 좋을 것 (바이트 [] 자바); 더 큰 파일을 가지고 있다면 GridFS가 더 잘 작동 할 것입니다.
간단한 바이너리 필드를 사용하여 내 문서에 많은 미리보기 이미지를 직접 저장합니다.
Morphia (http://code.google.com/p/morphia)를 사용하여 POJO를 저장합니다.
몽구스에 많은 이미지를 저장하려고합니다. 미리보기 이미지와 일반 크기 모두. 나에게 pojo는 필수적이다? !!! –
몽고에서 이미지를 어떻게 표현할 수 있는지 말해 줄 수 있습니까? like, { "x": 1, "y": 2} 어떻게 이미지를 나타 냅니까? –
이미지를 저장하는 방법? 하나의 문서에 모두 있습니까? 또는 하나의 컬렉션에서 문서를 분리 할 수 있습니까?또는 {{ "name": "Tamil", "age": 23, "Images"{ "image1": 123.jpg, "image2": abc.jpg와 같은 문서에 여러 이미지를 저장하고 싶다면 }}'java로 어떻게 할까? –
코드에 감사드립니다. 나는 또한 같은 과정을위한 코드를 만들었다. 그러나 너는 내 것보다 간단하다! –
그래서 HTML 파일에 쓰려면 서버의 그림 위치를 HTML로 출력 하시겠습니까? – Jeff
'LoadImage'메소드를 이용해 주셔서 감사합니다. –