분류 전체보기
-
[Spring] ModelMapper configuration errorsSpring 2021. 9. 30. 17:06
-ModelMapper에 대해서 자세히 포스팅을 하겠지만 ModelMapper는 EntitymodelDto 사이에 필드가 일치하지 않을 때 일치하는 필드 끼리 매칭을 하여 변환을 해주는 라이브러리이다. -필자는 이전까지는 다른 모델끼리 변화해 주는 메서드를 하나하나 만들어서 사용하고 있었다. 이번 기회에 ModelMapper 라이브러리를 도입하기로 하였다. 문제발생 스프링에서 메뉴얼대로 코드를 작성하고 실행하였는데 다음과 같은 오류가 발생하였다. ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request pro..
-
[IntelliJ] Google Style Formatter 적용 방법JAVA 2021. 9. 29. 17:31
Window 에서 IntelliJ 로 JAVA 개발 할 때 Goolgle style fomatter 설정 방법 1. intellij-java-google-style.xml 파일을 아래 github 주소에서 다운 받는다. https://github.com/google/styleguide GitHub - google/styleguide: Style guides for Google-originated open-source projects Style guides for Google-originated open-source projects - GitHub - google/styleguide: Style guides for Google-originated open-source projects github.com Z..
-
[Jenkins] 젠킨스에서 sshpass, scp로 파일 전송에서 권한 오류가 날 때CICD 2021. 9. 29. 16:10
젠킨스에서 sshpasss와 scp를 이용해 파일을 다른 서버로 복사해 주는 프로젝트를 만들었다. 하지만 권한 문제가 발생 하였다. 시나리오: - 내 서버에 구축한 jenkins에서 220.90.203.1 외부 서버로 파일을 전송하려한다. - 젠킨스에서 Build - Excute shell 에 다음과 같은 커맨드를 입력해 놓았다. sshpass -fpasswd scp -r -o StrictHostKeyChecking=no /home/test.txt root@220.90.203.1:/home/galaxy 이는 내 컴퓨터에 등록되어 있던 외부 서버의 ssh-keygen이 꼬여 있기 때문에 삭제하고 다시 ssh-keygen을 등록해 주어야 한다. 해결 방법: 1. 젠킨스를 구축한 서버에서 (docker ima..
-
[JAVA] 구글 자바 네이밍 (naming) 가이드JAVA 2021. 9. 29. 15:30
Naming 1. 식별자 (identifiers) 네이밍 규칙 - 모든 식별자는 ASCII 문자와 숫자 그리고 _, $를 써야한다. 그래야 정규 표현식으로 match 할 수 있다. - 구글 스타일에서 특별한 접두사 (prefixes) 나 접미사 (suffixes)를 사용 하지 않는다. ex) name_, mName, s_name 이런 변수명은 사용X 2. 식별자 type에 따른 규칙 패키지 이름 (package names) - 모든 패키지 이름은 소문자로 써야한다. '_' 없이 연속적인 단어로 연결해야한다. ex) com.example.deepspace (O), com.example.deepSpace (X), com.example.deep_space (X) 클래스 이름 (class names) - 클래스..
-
[JAVA] this 키워드JAVA 2021. 9. 29. 11:35
Java Script는 context에 따라서 다양한 값을 가지고 어떻게 사용하는지에 따라 그 역할이 구분된다. 필자가 Java Script를 먼저 공부 했던 터라 JAVA의 this도 깊게 알고 싶어 졌다. JAVA의 this는 Java Script 보다는 비교적 간단한 룰에 의해 사용 된다. JAVA에서 this란? - this는 인스턴스 (객체) 자신을 의미 - 자기 자신의 메모리를 가리킴 - 생성자에서 다른 생성자 호출 할 때 사용 - 인스턴스 자신의 주소를 반환 JAVA에서 this가 사용 되는 3가지 경우 1. 클래스 안의 생성자 (Constructor) 또는 메서드의 매개변수 이름과 클래스의 멤버변수와 이름이 동일 할 때 public class Universe { private String ..
-
[JAVA] 알고리즘 풀이를 위한 자바 입출력JAVA 2021. 9. 27. 20:12
자바 출력 1. System.out.printf(); - C언어의 printf와 비슷, 서식 지시자 (format specifier)를 통해서 출력 가능 int age = 30; System.out.printf("나는 %d살 입니다. \n", age) String name = "우주"; System.out.printf("나의 이름은 %s 입니다. \n", name) // ----출력---- // 나는 30살 입니다. // 나의 이름은 우주 입니다. - 가장 흔하게 사용되는 지시자: 정수 int 실수 float 문자 char 문자열 String 논리 Boolean %d %f %c %s %b 2. System.out.print(); - 서식 지정자를 사용 할 수 없고 문자열과 변수명을 +로 연결하여 사용해야..
-
[Refactoring] Chap 7. 캡슐화Refactoring 2021. 9. 15. 17:26
목차 레코드 캡슐화하기 컬렉션 캡슐화하기 기본형을 객체로 바꾸기 임시 변수를 질의 함수로 바꾸기 클래스 추출하기 클래스 인라인하기 위임 숨기기 중개자 제거하기 알고리즘 교체하기 ------------------------------------------------- 1. 레코드 캡슐화 하기 자바스크립트 레코드: 자바스크립트 객체 (Object)와 유사하지만 불변. 고정된 필드를 가지고 있음. let person = #{ name: "Kim", job: "Developer", age: "12", }; person.job = "Cooker"; // error 발생 자바스크립트의 레코드는 TC39 표준 명세의 제안 프로세스 상에 있으며 stage2 에 있다. #를 붙여 선언, 생성하며 레코드를 변경하려면 에..
-
[JAVA] 상속 Implements, extends 차이JAVA 2021. 9. 15. 17:02
상속 (Inheritance) 란? 자식 클래스에서 부모 클래스를 선택해서 부모의 멤버를 상속 받아 그대로 쓸 수 있음 클래스를 재사용하게 하여 효율적으로 만들어줌 부모 클래스의 private을 갖는 필드나 변수는 상속 불가 객체지향프로그래밍 (Object-Oriented Programming)을 구현하기 위해 상속이 존재 OOP의 특징: 상속과 인터페이스 (계층성), 캡슐화, 정보은익, 자료 추상화 (모델링), 동적 바인딩, 다형성, 사용편의성 (모듈화) implements 다중 상속을 지원해주기 위해 JAVA 8 부터 나옴 부모 클래스 (인터페이스) 에는 선언만 해주고 자식 클래스에서 반드시 오버라이딩 (재정의)를 해줘야함 재정의가 필요한 상속이기 때문에 의미가 없다고 생각 할 수도 있겠지만 디폴트메..