Background Image

FORUM

조회 수 15674 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
자바 파일을 패키지로 만들지 않고 함수를 실행하면 잘 되는데 패키지로 만들어서 사용하면 오류가 발생합니다. 
패키지로 만들면 loadjava할때 [loadjava 디비명 클레파일명] 설정을 다르게 해줘야 하는지 
아니면 함수명 만들때도[AA.HH] 자바명에 패키지명을 붙여줘야 되는건지.. 아시면 자세히 설명 부탁 드립니다.
패키지로 만들어서 해보고 여러방법을 써봣지만 잘 안되네요..
 
<java파일>
package test; //패키지로 만든경우 오류남
public class AA {
  public static String HH(String dt) throws SQLException, Exception { 
  생략..
 }
}

<함수>
CREATE FUNCTION "AA"("dt" VARCHAR) RETURN STRING
 AS LANGUAGE JAVA
 NAME 'AA.HH(java.lang.String) return java.lang.String'
  • ?
    정만영 2010.02.24 01:59
    안녕하세요.!!
    답변이 늦어 죄송합니다.
    내용을 확인중에 있습니다.
  • ?
    손승일 2010.02.24 02:18
    package 형태로 생성된 경우에는 패키지 구조 그대로 등록되어야 합니다.
    즉, 위 예제로 java를 컴파일 하면 test 디렉토리 하위에 AA.class가 생성될 텐데 이 test 디렉토리 전체가 등록되어야 합니다.
    loadjava 유틸리티는 디렉토리 전체를 등록해주는 형태는 지원하지 않습니다.
    loadjava 유틸리티가 하는 일은 DB 볼륨파일이 존재하는 경로의 java 디렉토리에 명시한 class 파일을 복사하는 작업을 하는 유틸리티입니다.
    loadjava demodb AA.class 하면 demodb 볼륨파일이 존재하는 $CUBRID/databases/demodb/java/AA.class가 복사됩니다.
    따라서 loadjava 유틸리티를 사용하지 않고 해당 경로에 class 파일을 복사하면 동일한 작업이 되는 것입니다.
    demodb를 기준으로 정리하면 컴파일 후 test/AA.class를 $CUBRID/databases/demodb/java/test/AA.class로 복사하면 등록 작업은 완료가 됩니다.
    다음은 DB에 함수를 명시하는 과정에서 package 명을 포함하여 명시해줘야 합니다.
    위 예를 변경하면 NAME 'test.AA.HH(java.lang.String) return java.lang.String' 와 같이 사용하셔야 합니다.
  • ?
    쪼로롱 2010.02.24 03:21
    감사합니다. 함수 생성시 자바가 패키지 선언인 경우는 스크립트로 작성해야 겠네요. 스크립트로 작성하면 test.AA.HH가 오류없이 동작하는데 큐브리드메니저로 사용하면 형식에 위배되서 "클래스이름.함수이름" 작성하라네요..

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 63
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4464
959 재설치가 안되요 1 냐우루 2012.11.28 6074
958 저 혹시 개발에 있는 데이터를 운영에 바로 등록할 수 있는 방법이 없나요??? 5 secret 처음처럼초보 2016.08.31 8
957 저장 프로스저에 있는 함수 상세보기 문의입니다. 1 대출인생30년 2023.06.12 82
956 저장 프로시저 사용시 커넥션 관련 4 고늬 2018.04.11 394
955 저장 프로시저 작성법 1 webdoors 2010.03.14 16379
954 저장 프로시저에서 JDBC 연결이 안되는 것 같습니다. 2 animan10 2017.03.10 9784
953 저장 프로시져 질문 3 file 이석희 2009.03.12 16480
952 저장 함수 호출 오류 3 keem 2021.08.12 503
951 저장프로시저 샘플 테스트 에러 Invalid call: it can not return ResultSet. 5 흔색늑대 2022.10.21 126
950 저장프로시저 관련 문의 2 toy2508 2014.11.04 8200
949 저장프로시저 관련 문의 사항입니다. 3 file reassasin 2017.01.18 16617
948 저장프로시저 실행관련 문의 4 f0081 2023.11.08 139
» 저장프로시저 함수-loadjava 3 쪼로롱 2010.02.23 15674
946 저장프로시저(function) 오류 문제입니다. 1 yoon 2010.03.29 10732
945 저장프로시저나 함수 질문 1 난래리 2015.11.13 5100
944 저장함수 관련질문 2 hscho 2016.09.02 12939
943 저장함수 문제요.. 1 owlowl 2016.08.24 12657
942 저장함수에 대하여 1 보리빵 2010.03.04 9854
941 전송 연결 현재 연결은 원격 호스트에 의해 강제로 끊겼습니다 1 바람바람 2013.04.12 20697
940 전송 연결 현재 연결은 원격 호스트에 의해 강제로 끊겼습니다에서 데이터를 읽을 수 없습니다. 2 바람바람 2013.03.29 42891
Board Pagination Prev 1 ... 148 149 150 151 152 153 154 155 156 157 ... 200 Next
/ 200

Contact Cubrid

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