FORUM

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------


BLOB 타입 이미지를 JSP로 웹에 뿌려주려면 어떻게 해야하나요?

SQL은 다음과 같이 했습니다.


SELECT 

BLOB_TO_BIT(mem_img)

FROM 

member

  • ?
    김승훈 2014.07.08 20:37

    안녕하세요. 큐브리드를 사랑해주셔서 감사합니다.


    제가 해결한 방법을 말씀드리자면요.


    서블릿 클래스 하나를 생성하여서 blob 컬럼을 조회 해서

    ServletOutputStream 객체에 write하는 방식으로 처리했습니다.


    예제 소스코드는 아래와 같습니다.


     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    response.setContentType("image/jpeg");

    int num = Integer.parseInt(request.getParameter("num")); // blob 테이블의 index 번호입니다.

    String className = "cubrid.jdbc.driver.CUBRIDDriver";

    String url = "jdbc:cubrid:<ip>:<port>:<db_name>:<id>:<pwd>:";

    String sql = "select blob from blob_tbl where id=?"; // blob을 조회하는 쿼리입니다.

    Connection conn = null;

    PreparedStatement pstmt = null;

    ResultSet rs = null;

    Blob blob = null; // blob 데이터를 저장할 객체 생성

    ServletOutputStream sOut = response.getOutputStream(); // 이미지를 출력할 outputStream 객체 생성

    try {

    Class.forName(className);

    conn = DriverManager.getConnection(url);

    System.out.println("conn : " + conn);

    pstmt = conn.prepareStatement(sql);

    pstmt.setInt(1, num);

    rs = pstmt.executeQuery();

    if(rs.next()) {

    blob = rs.getBlob(1); // blob 객체에 blob 데이터 저장

    }

    sOut.write(blob.getBytes(1, (int)blob.length())); // outputStream 객체에 blob 객체를 byte[] 로 만들어서 쓰기

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    try {

    if(sOut != null) sOut.close();

    if(rs != null) rs.close();

    if(pstmt != null) pstmt.close();

    if(conn != null) conn.close();

    } catch (SQLException e) {

    e.printStackTrace();

    }

    }

    }


    위와 같은 소스코드로 서블릿 클래스를작성하여 web.xml 파일에 등록 후

    jsp 페이지에서 호출하면 정상적으로 이미지가 출력됩니다.


    감사합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 10 admin 2024.04.23 26080
1900 ADO.NET "Invalid buffer position!" 오류 1 file 할리 2014.07.17 7923
1899 1895번 추가 문의 드립니다 1 dgr 2014.07.16 5107
1898 killtran의 정보로 OS상에서 프로세스 번호 찾는법좀 알려주세요 1 왕검 2014.07.16 7811
1897 큐브리드 접속이 안됩니다. 4 나이젤 2014.07.16 10575
1896 2008R 2.1 버전에 접속할 수 있는 매니저나 쿼리브라우져가 있나요? 1 땡땡이 2014.07.15 5090
1895 자바 + C 연동 끊김현상 1 secret 도제마 2014.07.14 13
1894 사설망과 인터넷망으로 불리된 시스템에 관해 1 거지같은 2014.07.14 6730
1893 윈도우 CUBRID DB 자동 실행 1 조금느린아이 2014.07.12 7375
1892 C# WPF Dataset 연결시 외래키 자동 연결 안됨. 1 moon 2014.07.11 10289
1891 오라클 마이그레이션 외래키 정보 추가 오류 3 moon 2014.07.10 8842
1890 cmd 창에서 sql파일을 실행하는 방법 3 프라우닐 2014.07.10 15329
1889 캐릭터셋 또는 락 문제? 8 secret 달콤한후치 2014.07.10 632
1888 데이터베이스 로그인시 접속 에러 1 file dgr 2014.07.10 7548
1887 loaddb 문의 4 chocob 2014.07.09 8706
1886 centos6.5에서 yum으로 설치했을때 web manager 실행 1 hey0man 2014.07.09 9200
1885 DB접속이 안됩니다. 1889번 글로 재질문 드립니다. 2 CUBRID 2014.07.08 5981
1884 컴퓨터 이름 바꾼후 데이터베이스가 안보여요. 1 secret 그러게 2014.07.08 2
» BLOB 타입 이미지를 JSP로 웹에 뿌려주려면 어떻게 해야하나요? 1 아워나 2014.07.07 15987
1882 DB접속이 안됩니다. 질문 드려요. 1 CUBRID 2014.07.07 6813
1881 OLEDB 연결시 에러 db_e_sec_auth_failed ( 0x80040E4D ) 1 BlueHeart 2014.07.07 6559
Board Pagination Prev 1 ... 110 111 112 113 114 115 116 117 118 119 ... 209 Next
/ 209

Contact Cubrid

영업문의 070-4077-2112 / 기술문의 070-4077-2148 / 대표전화 070-4077-2110 / Email. contact_at_cubrid.com
Contact Sales

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

나눔고딕 사이트로 가기

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5