Spring 기본 - JWT 인증 시스템
·
카테고리 없음
https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시 시스템으로 사용 중람다 표현식, Stream API 등 중요한 기능이 도입된 버전장기적으로는 점차 마이그레이션하는 추wooncloud.tistory.comhttps://wooncloud.tistory.com/162 Spring 기본 - Service 계층이전 내용https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시..
Spring 기본 - 게시판 만들기
·
개발 아카이브/JAVA
https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시 시스템으로 사용 중람다 표현식, Stream API 등 중요한 기능이 도입된 버전장기적으로는 점차 마이그레이션하는 추wooncloud.tistory.comhttps://wooncloud.tistory.com/162 Spring 기본 - Service 계층이전 내용https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시..
JAVA equals, hashCode 오버라이드시 instanceof와 getClass 차이
·
개발 아카이브/JAVA
인텔리제이에서 equals()나 hashCode()를 생성할때 instanceof와 getClass 중에 어느걸 사용할꺼냐 선택하는 경우가 있다. instanceof 방식상속 관계를 허용.부모 클래스와 자식 클래스 간의 비교가 가능.더 유연하지만 대칭성(symmetry) 원칙을 위반할 수 있다.@Overridepublic boolean equals(Object obj) { if (this == obj) return true; if (!(obj instanceof MyClass)) return false; MyClass myClass = (MyClass) obj; // 필드 비교 로직 return Objects.equals(name, myClass.name);} getClass(..
Spring 기본 - DTO (Data Transfer Object) 패턴
·
개발 아카이브/JAVA
https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시 시스템으로 사용 중람다 표현식, Stream API 등 중요한 기능이 도입된 버전장기적으로는 점차 마이그레이션하는 추wooncloud.tistory.comhttps://wooncloud.tistory.com/162 Spring 기본 - Service 계층이전 내용https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시..
Spring 기본 - Service 계층
·
개발 아카이브/JAVA
이전 내용https://wooncloud.tistory.com/161 Spring 기본 시작 - 세팅부터 CRUD API 까지1. 자바 설치 (Java JDK 17 이상 설치)Java 8 (2014년 출시)여전히 많은 기업에서 레거시 시스템으로 사용 중람다 표현식, Stream API 등 중요한 기능이 도입된 버전장기적으로는 점차 마이그레이션하는 추wooncloud.tistory.com Service 계층 추가왜 Service 계층이 필요할까?Controller: HTTP 요청/응답 처리만 한다.Service: 실질적인 비즈니스 로직 처리를 service에서 모두 함.Repository: 데이터베이스 접근만 한다.Service 패키지와 클래스 생성src/main/java/com/example/demo_a..
Java 17 다운로드 방법
·
개발 아카이브/JAVA
주요 Java 17 배포판1. Oracle JDK 17다운로드: https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html특징: Oracle의 공식 배포판라이선스: 개발/테스트는 무료, 상업적 사용 시 유료2. Eclipse Adoptium다운로드: https://adoptium.net/temurin/releases/?version=17특징: 커뮤니티 기반, 가장 인기 있는 오픈소스 배포판라이선스: 완전 무료 (OpenJDK 기반)3. Amazon Corretto 17다운로드: https://aws.amazon.com/corretto/특징: AWS에서 지원하는 무료 배포판라이선스: 완전 무료4. Microsoft Build o..
[JAVA] Properties 파일 읽기 메서드
·
개발 아카이브/JAVA
🔍 설명 하드코딩을 피하고 중요한 키나 패스워드는 코드에 직접 입력하지 않고 외부 파일에서 읽어 사용합니다. 그럴때 보통 Properties 파일을 많이 사용합니다. 공통적으로 많이 사용하기도 하고 가끔 필요할때 사용하기 쉽게 코드를 공유합니다. 아래의 readProperties 메서드의 argument는 Properties 파일 상대경로 입니다. 그리고 입력한 경로로 읽어낸 Properties 객체를 반환합니다. 📝 파라미터 예시 : properties/db.properties ✅ Properties 파일 읽기 메서드 : readProperties 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 /** * prop.getPropert..
[myBatis] mybatiseditor - SQL Mapper DTD 설치
·
개발 아카이브/JAVA
myBatis를 사용할 때 SQL Mapper XML을 사용하여 쿼리문을 작성하게 됩니다. 하지만 쿼리문 작성은 익숙해도 SQL Map을 작성하는 것은 익숙하지 못합니다. MyBatis를 작성할 때 사용되는 태그들은 여러 가지 많습니다. 이 태그들은 전체 외울수도 없고, 하나하나 타이핑하는 것이 불편하죠. 이럴 때 IDE의 자동완성 기능이 절실한데 대부분 IDE는 모든 XML의 형식을 알지 못합니다. DTD 란? 그렇습니다 XML이 구조를 가지려면 그 구조를 정의해주는 DTD가 필요합니다. MyBatis Sql Map DTD만 가지고 있으면 이클립스가 태그를 자동 완성도 해주고 작성도 편하게 해 줍니다. 위의 XML과 같이 등등.. 그리고 parameterClass, resultClass, propert..
[MAVEN] m2e 문제 - cannot nest inside to enable the nesting exclude
·
개발 아카이브/JAVA
Maven 프로젝트로 WebApp을 만들때 다음과 같은 창이 뜰때가 있습니다. Finish든 Cancel이든 클릭 후 프로젝트를 확인하면 source directory가 src로만 잡혀 있습니다. 그래서 프로젝트 디렉터리 구조가 아래와 같게 됩니다. 이유는 m2e가 source directory를 src/main/java가 아닌 src/로 만들어버립니다. 그래서 프로젝트 properties > java build path 로 들어가면 source 경로가 하나밖에 없습니다. 해결방법 아래의 src 를 Remove 합니다. 그리고 프로젝트 오른쪽 클릭 > Maven > Update Project를 합니다. 그럼 프로젝트는 다음과 같이 프로젝트 구성이 달라지게 됩니다. 이 다음 Maven 프로젝트 세팅을 마치..