Could not initialize class com.thoughtworks.xstream.converters.collections.PropertiesConverter

sts3, jdk17로 Spring Legacy Project 해서 생성하려니 위와 같은 창이 떴다

 

1. jdk11 설치 https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html

 - 운영체제에 맞는 파일을 선택하면 동의 → 로그인 순서로 화면이 나오는데 로그인을 하면 다운로드가 시작됩니다.

 

2. sts가 설치된 경로를 들어가 sts.ini을 찾고 해당 파일에

-vm
C:\Program Files\Java\jdk-11\bin\javaw.exe

새로 설치한 jdk 경로로 수정하였더니 정상적으로 프로젝트가 생성되었다.

 

-vm
C:\Program Files\Java\jdk-17\bin\javaw.exe

기존에는 위와 같이 jdk17 경로가 있었음

👉 합격기준 100점 만점 60점 이상

👉 응시료 17,200원

👉 시험 일정은 아래 링크 참고

https://www.q-net.or.kr/crf005.do?id=crf00505&gSite=Q&gId=&jmCd=6921&examInstiCd=1

공부방법은 혼자 빠르게 기본기를 잡기엔 무리가 있다고 판단해 컴활 강의로도 유명한 균쌤 정보처리기능사 강의를 들었다. 아마 시험 한달 전부터 들었던 것 같은데 시간이 얼마 없다 하면 보름 전부터 듣고 기출+균쌤 강의 이렇게 병행해도 가능할듯! (저는 아는 부분은 빠르게 훑는 식으로 보고 알고리즘 위주로 들어서 실제 수강시간은 10시간도 안되었던 것 같아요)

균쌤 강의는 코딩 문제 풀 때 많이 도움됨. 시나공 실기 기출 복원 문제 회차별로 2회씩 풀고 모르는 부분 오답노트+개념정리. 너무 오래된 문제는 최신 경향이랑 달라보여 3개년만 풀었음. 

그리고 시험 전에 오답정리노트 가져가서 잘 모르겠던 거 몇개 본 것도 도움됐습니다. 아직도 기억나는 게 단통시인 마지막에 봤다가 얻어걸렸던 :-) ..

개념정리도 거창하게 하지 않았습니다 헷갈리는 것만! 그리고 인터넷에 검색하면 깔끔하게 정리해놓은 거 정말 많으니 참고하시길🍀🍀

 

cd : change directory

띄어쓰기가 있는 디렉터리 명의 경우 위와 같이 큰 따옴표("")로 묶어준다.

'etc.' 카테고리의 다른 글

[MongoDB] TimeOutException 해결하기  (0) 2023.08.25
개발 환경 세팅 (롬복 Lombok 설치)  (0) 2023.08.21
개발 환경 세팅 (STS 설치)  (0) 2023.08.18
[Git] not a git repository 해결하기  (0) 2023.03.04
[Ubuntu] apt update 에러  (0) 2023.02.28
프로젝트 JDK와 컴퓨터에 깔린 JDK 버전이 일치함
Network Access에 내 IP 추가한 상태 (MongoDB atlas는 화이트리스트에 등록된 아이피 주소에 한해 접근 가능)


- 문제 상황 : 로컬에서 연 홈페이지가 MongoDB TimeOutException으로 안 뜸

- 해결방법 : Network Access에서 모든 IP로 접속할 수 있게 설정함

MongoDB Atlas 로그인 후 화면. 설정할 프로젝트에 들어간다.

 

화면 왼쪽 아래에 Network Access 탭 클릭

 

우선적으로는 목록에 자신의 IP주소가 있는지 확인하고, 안된다면 오른쪽에 초록버튼 [ADD IP ADDRESS] 클릭.

 

맨위 버튼인 어디서든 접속 허용 버튼을 누르고 2번란에 0.0.0.0/0이 입력되었는지 확인 후 [Confirm] 버튼 클릭

창이 닫힌 후 목록에 0.0.0.0/0이 추가되었다면 된 것이다.

 

 

참고한 사이트

https://www.mongodb.com/community/forums/t/mongotimeoutexception/12977/3

%s : 문자열 (string)

%d : 정수형 (int)

%n : 줄바꿈

%f : 실수형(float)

%t : date, time

%o : 8진수

%x : 16진수

%b : boolean (true, false)

%e : 지수

 

 

더보기

C언어 출력타입

 

%d : 10진수(정수형, int)

%f : 실수형(float)

%e : 지수형

%o : 8진수

%x : 16진수

%u : 부호없는 10진수 (unsigned int)

%g : 실수형 자동 출력

%p : 포인터의 주소

%c : 하나의 문자로 출력

%s : 문자열 (string)

 

https://projectlombok.org/download

위 링크에 들어가서 제일 큰 빨간 글씨 [Download 버전] 눌러서 다운로드

 

클릭해서 파일이 실행되면 그냥 해도 되지만 안된다면 아래의 방법으로 하면 된다.

  1. cmd 실행 후 디렉터리를 이동하는 명령어를 입력해준다. → cd <lombok.jar 파일이 다운로드된 경로>
  2. java -jar lombok.jar 입력해서 파일을 실행시킨다

 

IDE를 찾을 수 없다는 것이므로 2번 버튼 [Specify location..]을 눌러 STS 혹은 Eclips등 개발 툴이 설치된 경로를 설정해주면 된다.

 

IDE 경로가 정상적으로 입력되었다면 오른쪽에 [Install/Update] 클릭

 

성공적으로 설치되었다.

 

설치 후 롬복이 정상적으로 작동하지 않는다면 참고할만한 글 https://study-js.tistory.com/11

JDK 17 버전이 설치되어있음.
Spring Boot 3.x 버전 이상은 JDK 17부터 지원.

 

설치하기

 

https://spring.io/tools

위 링크에 접속해서 스크롤을 내리면 사진과 같은 창이 나온다. 윈도우는 맨 아래 노란색 파일을 다운로드.

 

칠해진 파일이 다운로드 된 파일이다. 다운로드 된 Jar 파일을 클릭해서 열면 노란색 아래에 있는 폴더가 나온다.

다운로드 파일 아래에 있던 폴더를 누른 다음 SpringToolSuite4 클릭

 

위 프로그램을 실행하면 사진과 같은 창이 나타남. 작업공간을 설정하는 창이므로 미리 생성해뒀던 폴더에 지정해도 되고 자동으로 생성되는 폴더에 할 수 있다.

임의로 설정시에는 [Browse..] 클릭 후 해당 폴더 설정해주면 됨. 작업공간 설정 후 [Launch].

잘 실행된다면 정상적으로 설치된 것이다~!

 

 

 

👉 합격기준 100점 만점 60점 이상

👉 응시료 14,500원

👉 시험 일정은 아래 링크 참고

https://www.q-net.or.kr/crf005.do?id=crf00505&gSite=Q&gId=&jmCd=6921&examInstiCd=1 

 

총 두번 응시했고 1회 때는 공부를 거의 안하다시피 해서 58점으로 불합격되었다. 과락 안 맞은 것만으로 다행.

2회 때는 이기적 정보처리기능사 필기 교재로 3일 하루에 한두시간, 총 공부시간 5시간 정도 했고 예전 기출에서 출제되는 문제가 많아서 인터넷 cbt 기출이나 문제집에 있는 문제 위주로 풀었다. 단순 풀기보단 오답해설을 직접 작성해보면서 풀었다. 기간이 기간이니만큼 어렵다고 생각되는 부분은 과감히 포기했고 많이 나오면서 무난한 부분 위주로 공부했다. (이기적 문제집 앞 쪽에 빈출부분 나온다) 72점으로 합격했다. 교재는 굳이 이기적을 살 필요는 없고 다른 거 구매해도 괜찮을듯 싶다.

결론적으로 이론은 한두번 훑고 기출에서 많이 나오니 문제 위주로 본다면 단기합격은 어렵지 않을 것 같다!

👉 기출문제집 17,820 (SQL 자격검정 실전문제 - 인터파크)

👉 응시료 50,000원

👉 시험일정 https://www.dataq.or.kr/www/accept/schedule.do

👉 수험장 준비물: 신분증, 볼펜, 컴퓨터용 싸인펜

 

자격증 정보

  • 총 50문항이며 60점 이상 합격

  • 유효기간은 2년이지만 1년 6개월 ~ 2년 사이 기간에 보수교육을 이수하면 영구가 된다

https://www.dataq.or.kr/www/board/view.do

 

합격후기

아래는 합격 후기~

2주 정도 평일 하루 한시간씩 공부했고 (총 공부시간 10시간 미만) 국비학원에서 교육 받는 중이었기에 가능했던 것 같다.

교재는 유선배 SQLD 교재와 노랭이, 유선배는 초반만 조금 보고 거의 보지 않았고 노랭이 위주로 풀면서 노트에 오답 해설 써보면서 공부함. 배경지식 있다면 교재 사는 것보다 노랭이만 풀면서 인터넷으로 찾아보는 걸 추천. 인터넷에 SQLD 합격후기 찾아보면서 다른 사람 공부법을 찾아본 것도 도움됐다.

 

 

정보처리기능사 필기 대비로 정리, 아래의 노션 링크에서 보면 좀 더 가독성 있게 볼 수 있습니다.

https://vigorous-chipmunk-cc6.notion.site/0250ab9401954bb5ae39efbcb7ad4c21?pvs=4 

 

  • 배열(array) : 같은 타입의 변수들로 이루어진 유한 집합
    • 요소(element) : 배열을 구성하는 각각의 값
    • 인덱스(index) : 배열에서 위치를 가리키는 숫자, 인덱스는 0부터 시작!
  • 배열은 선언 형식에 따라 1차원, 2차원, 다차원 배열로 선언할 수 있으나 2차원 배열까지 많이 사용됨

 

배열 선언시

  • 미리 공간의 갯수(길이)를 지정해야 함 →고정되어있게 설계되었으므로 미지정시 컴파일 오류 발생
  • 배열의 타입 지정, 배열에 저장할 데이터의 자료형 명시
  • 생성한 배열은 인덱스 번호를 통해 접근 가능하다

 

  • 기본문법
    • 선언
      • 타입[] 배열이름; →될 수 있으면 이 방법을 사용
      • 타입 []배열이름;
      • 타입 배열이름[];
    • 초기화
      • 배열이름 = new 타입[배열길이];
  • 배열 선언시에는 메모리를 차지하지 않고 초기화로 사이즈를 정해주어야 메모리를 차지함
public static void main(String[] args) {
	// 배열 선언 예제 (int 대신 다른 타입으로도 선언할 수 있다)
	int[] score1;
	int []score2;
	int score3[];

	// 배열 초기화
	score1 = new int[3]; 
		// score1 배열을 사이즈 3인 배열로 초기화
		// int의 경우 기본값 0으로 세팅됨
 }

배열 선언과 초기화를 동시에 할 수도 있다.

  • 타입[] 배열이름 = new 타입[배열길이];
public static void main(String[] args) {
	// 배열 선언 + 초기화 동시에
	int[] score1 = new int[10];
	int []score2 = new int[20];
	int score3[] = new int[30];
	// 사이즈는 각각 10, 20, 30으로 초기화되었으며
	// 인덱스는 0부터 시작하므로 각각의 사이즈에 -1 (0~9, 0~19···)
	// 사이즈만 선언하였고 값은 모두 0으로 세팅됨
}

선언과 사이즈 지정, 값 지정을 동시에 할 수도 있다.

  • 타입[] 배열이름 = {값1, 값2, 값3, ···}
public static void main(String[] args) {
	// 배열 선언 + 값 세팅하기
	int[] score4 = {1, 2, 3, 4, 5}; // 사이즈는 5, 인덱스 범위는 0~4.
	int[] score5 = {0, 0 ,0} // int[] score5 = new int[2]; 와 같다.
}
public static void main(String[] args) {
	// for문을 활용해 배열에 값 넣어주기
	int[] score = new int[5];

	for(int i=0; i<score.length;i++) {
		number[i] = i*10;
		}
}

 

배열 출력

 

배열 관련 문제 풀기

pubilc class Test {
	public static void main(String[] args) [
		int i;
		int num[] = {2, 1, 3, 7, 4, 9};
		int numb[] = new int[10];
			
		for (i=0; i<num.length; i++)
			numb[i] = num[i];
		for (i=0; i<numb.length; i++)
			System.out.printf("%d", numb[i]);
	}
}

문제 풀이

  1. 배열 num을 선언 및 초기값 지정 size = 6, index = 0~5.
  2. 배열 numb를 선언 size = 10, index = 0~9.
  3. 반복문 조건 ⇒ i는 0부터 시작하며, num.length보다 작고, 1씩 증가한다.
    1. numb의 i번째 값은 num의 i번째 값과 같다.
    2. i가 num.length 값과 같으면 반복문 중지.
  4. 반복문 조건 ⇒ i는 0부터 시작하며, numb.length보다 작고, 1씩 증가한다
    1. numb의 i번째 값을 반복문으로 출력
    2. i가 numb.length 값과 같으면 반복문 중지.

*.length는 배열 값의 갯수(길이를) 출력해주는 함수임

정답 : 213749000

  • numb 초기화시에 모든 값이 자동으로 0이 됨
  • 첫번째 for문에서 num.length인 6보다 작은 수로 반복하므로 numb의 인덱스 0번째부터 5번째까지 값을 넣어주면 numb[] = {2, 1, 3, 7, 4, 9, 0, 0, 0}가 된다
  • numb의 i번째값을 numb.length인 10보다 작게 출력하는 마지막 반복문을 수행하면 213749000이 출력됨

+ Recent posts