2012-01-05 6 views
2

DB에서 직접 바이트 배열을 가져 와서 HTML을 사용하는 툴팁에 넣으려고합니다. 이것은 다른 텍스트 전용 툴팁과 일치하는 텍스트를 포함해야하므로 일관성을 유지하기위한 것입니다.Java - Byte Array/ImageIcon을 HTML에 직접 삽입하십시오.

img src 태그에 이미지를로드하기 전에 파일에 이미지를 저장하는 단계를 건너 뛰는 것이 이상적입니다. 바이트 배열을 쉽게로드 할 수 있나요? (Image 또는 ImageIcon으로 쉽게 변환 할 수 있습니다.)

+0

어디서 봉사합니까? JSP, 서블릿 등으로 DB에서 가져온 데이터를 응답으로 보내고이를 img의 'src'속성에 요청하기위한 적절한 URL을 넣을 수 있습니다. – Viruzzo

+0

애플릿에 대한 서블릿을 통해 바이트 배열로로드됩니다. 그런 다음이 이미지를 사용하여 미리보기 이미지를 만들고 전체 이미지 툴팁에 원본 이미지 (큰 이미지)를 사용하려고합니다. – spuriosity

+0

그래서 이미지 서비스 서블릿을 만들고 적절한 URL에 매핑하면 황금색이됩니다. – Viruzzo

답변

4

이미지 제공 서블릿을 만들고 적절한 URL에 매핑 한 다음 데이터베이스에서 이미지 데이터를 덤프하면됩니다.

편집 : 브라우저에서 이미지를이 방법으로 캐시 할 수 있지만 수동으로해야합니다.

3

어떻게 든 자바 측 또는 html/자바 스크립트 측에서 base64 인코딩으로 바이트를 변환해야합니다. 그리고 당신이 같은 것을 쓸 수 있습니다 : 이미지를 가져 오기 요청을 저장하더라도,

<img src="data:image/gif;base64,R0lGODlhUAAPAKIAAAsLav///88PD9WqsYmApmZmZtZfYmdakyH5BAQUAP8ALAA AAABQAA8AAAPbWLrc/jDKSVe4OOvNu/9gqARDSRBHegyGMahqO4R0bQcjIQ8E4BMCQc930JluyGRmdAAcdiigMLVrpTYWy5FKM1IQe+Mp+L4rphz+qIOBAUYeCY4p2tGrJZeH9y79mZsawFoaIRxF3JyiYxuHiMGb5KTkpFvZj4ZbYeCiXaiKBwnxh4fnt9e3ktgZyHhrChinONs3cFAShFF2JhvCZlG5uchYNun5eedRxMAF15XEFRXgZWWdciuM8GCmdSQ84lLQY5R14wDB5Lyon4ubwS7jx9NcV9/j5+g4JADs=" alt="" width="80" height="15" /> 

참고 n은이 사건을, 이미지 자체는 향후 사용을 위해 캐시되지 않습니다. 다음을 참조하십시오. http://www.websiteoptimization.com/speed/tweak/inline-images/

해결 방법 :

+0

내가로드하려고하는 이미지는 약 600x600이고 URI 인코딩에는 너무 클 수 있습니다. – spuriosity

+0

최대 크기는 32kb입니다. 그만큼 충분하지 않으면 이미지 크기를 조정하거나 실제로 파일에 덤프하십시오. –

+0

데이터베이스에서 원하는대로 이미지를 전달, 크기 조정, 크기 조정, 이미지 색상 화하는 이미지 서비스를 가질 수도 있습니다. –

관련 문제