누리몬
누리누리한세상
누리몬
전체 방문자
오늘
어제
  • 분류 전체보기 (108)
    • 웹 (28)
      • JSP (2)
      • JAVASCRIPT (2)
      • JQUERY (18)
      • SALESFORCE (5)
    • 언어 (54)
      • JAVA (34)
      • DB (16)
      • Angular2 (0)
      • AEM (4)
    • 일상이야기 (5)
      • 푸드스토리 (1)
      • 누리스토리 (0)
      • 잡다한이야기 (1)
      • 인생사 (0)
    • 환경세팅 (10)
    • 리눅스 (6)
    • 기타잡템 (3)
    • 회사 (2)
      • 기록 (0)
      • 산업기사공부 (2)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록
  • 관리자

공지사항

인기 글

태그

  • PLSQL
  • 공포 방탈출
  • 애견동방가능펜션
  • Oracle
  • 둠 이스케이프
  • 국내방탈출
  • log4j보안취약
  • 테이블코멘트확인
  • web.xml 오류
  • java
  • log4j권고사항
  • 프로시저
  • 리눅스명령어
  • 부산여행
  • 강아지
  • 리눅스
  • Zflip3
  • jquery
  • calendar
  • 누리

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
누리몬

누리누리한세상

언어/DB

[ORACLE JAVA] 오라클 JAVA 함수처럼 사용

2015. 3. 10. 17:36

ORACLE JAVA


오라클에서 java 사용하기


-sha512 관련 함수를 db 에서도 사용하기 위해서 알아보니 oracle 에서 java 를 사용함. 예시는 sha512 용


+java 추가 

+ 함수추가 (java 를 부를수있는 함수 추가)

+ SQL 에서 함수를 불러서 사용 javaname.class name 으로 불러서 쓸수있음 .


--실행순서

1. CREATE_COMPILE_JAVA_SOURCE_SHA512.sql --위내용.

2. CREATE_FUNCTION_F_ENC_SHA512.sql


PLSQL


1. java class 생성 

 

create or replace and compile java source named SHA512 as

 

import java.security.MessageDigest;

 

public class SHA512 {

public static String encrypt(String tmpStr) throws Exception{

//SHA-512 적용

MessageDigest md = MessageDigest.getInstance("SHA-512");

 

    md.update(tmpStr.getBytes());

    byte[] msgb = md.digest();

 

    StringBuffer sb = new StringBuffer();

 

    for(int i = 0; i < msgb.length; i++){

byte temp = msgb[i];

String str = Integer.toHexString(temp & 0xFF);

while(str.length() < 2){

str = "0" + str;

}

str = str.substring(str.length() - 2);

 

      sb.append(str);

}

//--

return sb.toString();

}

}

# 자바클래스를 입력하고 실행하면 빌드가됨 리얼리?



2. class 를 이용할수 있도록 function  생성


create or replace FUNCTION F_ENC_SHA512

(

  P_STRING IN VARCHAR2 

) RETURN VARCHAR2 as language java name 'SHA512.encrypt(java.lang.String) return String';



# java 를 바로 sql 문에 사용할수 없기 때문에. function 안에다가 java 문을 사용하여 function 실행하여 java 를 사용한다.


3.  sql 문으로 실행.

select F_ENC_SHA512('123')  from dual ;



# 123 에 sha512 함수를 거친 값이 나오게됨 짜잔 




저작자표시 비영리 변경금지 (새창열림)

'언어 > DB' 카테고리의 다른 글

[ORACLE] DB 팁 (테이블 상세 내용 쿼리로 조회)  (0) 2015.07.10
트리거  (0) 2015.04.07
[PLSQL]  (0) 2015.03.10
[DB] 문법  (0) 2015.03.09
[프로시저]  (0) 2015.02.24
    '언어/DB' 카테고리의 다른 글
    • [ORACLE] DB 팁 (테이블 상세 내용 쿼리로 조회)
    • 트리거
    • [PLSQL]
    • [DB] 문법
    누리몬
    누리몬
    안녕하세요 누리누리한세상 블로그입니다 문의사항은 hjdhsmf@gmail.com 으로 메일주세요.

    티스토리툴바