본문 바로가기

java

(4)
[Java] Cipher.doFinal(Byte) Error 해결 발생한 문제 - Cipher.doFinal(Byte)로 생성되는 값이 비정상적인 값이 생성되어 문제 발생 발생 원인 - Java에서는 대칭키 알고리즘을 사용하여 데이터의 암, 복호화를 수행할 때 javax.crypto.Cipher 클래스를 사용 - 해당 클래스의 경우 인스턴스를 가져올때 Cipher.getInstance()를 호출하는데 호출시 사용할 알고리즘, 운용모드, 패딩방식을 인자로 넘겨주어야 함 - 여기서 문제가 발생한 부분이 인자로 넘겨준 부분인데 기존 설정은 Cipher.getInstance("RSA") 로 설정되어 있었는데 이경우 Provider가 제공하는 기본설정을 따라가게 됨 - 서버의 환경이 Provider가 제공하는 기본 설정 적용시에 문제가 발생한 케이스로 운용모드, 패딩방법 2가지..
[Java] Illegal embedded minus sign 에러 해결 발생한 문제 - java.lang.NumberFormatException: Illegal embedded minus sign (잘못된 마이너스 기호가 들어감) 에러 메시지 java.lang.NumberFormatException: Illegal embedded minus sign at java.math.BigInteger.(BigInteger.java:302) 발생 원인 1. BigInteger에는 숫자만 들어가야 하지만 해당 값에 '-' 부호가 들어가 있어서 발생 2. 해당 에러메시지는 java 1.6 버전이나 그 이하의 버전에서 발생 (java 1.8 확인결과 1.8 버전에서는 Illegal embedded sign character 에러 발생) 해결방법 1. BigInteger의 값이 정상적으로 들..
Stack 직접 구현하기(Java) Stack이란? - 한 방향에서만 자료를 삽입, 삭제가 가능한 선형구조(LIFO - Last In First Out - 후입선출) 형태의 자료구조 - push(삽입), pop(삭제)을 사용하여 데이터의 추가 및 삭제가 가능 코드 작성 방식 1. 작성할 Stack의 크기를 입력받음 2. 입력받은 크기만큼의 배열 생성 3. 현재 위치를 표기할 index 변수 생성 후 -1로 초기화 3. 반복문을 사용하여 사용자에게서 exit명령을 입력받을 때 까지 반복하여 명령 수행 4. pop 명령 입력시 현재 배열의 인덱스값을 출력한 후, null로 초기화 - Exception 발생시, 인덱스의 범위관련 예외이므로 StackUnderflow 발생 메시지 출력 5. push 명령 입력시 현재 배열의 인덱스 값에 1을 더한..
JAVA 설치 및 환경변수 설정 * 설치 순서 * 1. Java 설치 2. Eclipse 설치 3. 환경변수 설정 4. 구동 확인 1. Java 설치 1) Oracle 홈페이지로 이동 후 DownLoad 선택 2) Java 탭에서 Java SE 선택 3) Java SE에서 원하는 버전 선택하여 다운로드 4) 자신의 컴퓨터 사양에 맞게 버전 선택하여 파일 다운 5) 다운된 설치파일을 이용하여 설치 진행 2. Eclipse 설치 1) Eclipse 홈페이지로 이동하여 packages 선택 2) Eclipse IDE for Java EE Developers 에서 사양에 맞는 파일 다운 3) 압축 해제 및 WorkSpace 지정 - WorkSpace : 자신의 작업물을 저장할 폴더 위치 3. 환경 변수 설정 1) 시스템 변수 추가 - 내 컴퓨..