java 40

250110_01.Record의 주요 특징

스터디에서 정리해주신 내용을 (거의)그대로 옮겨적은 내용입니다. ========================================================= Java17에서 도입된 'record'는 데이터 클래스를 간결하고 효율적으로 정의하기 위한 새로운 기능불변성을 기본적으로 지원하며, 가독성과 유지보수성을 크게 향상 시킴 Record의 주요 특징 1. 간결한 문법 - record 키워드를 사용하여 데이터 클래스를 간단히 정의할 수 있음public record Person(String name, int age) {} - 자동으로 생성자, getter, equals, hashCode, toString 메서드 제공 2. 불변성(Immutability) - 모든 필드는 final로 선언되어, 생성..

240128_05.IntelliJ실습_Todo 리스트 구현_요구사항정리

IntelliJ실습_Todo 리스트 구현_요구사항정리 필요기능 1 todo 리스트 목록에 아이템 추가 2 todo 리스트 목록 중 특정 아이템 조회 3 todo 리스트 전체 목록 조회 4 todo 리스트 목록 중 특정 아이템 수정 5 todo 리스트 목록 중 특정 아이템 삭제 6 todo 리스트 전체 목록 삭제 API 스펙 문서 Method Endpoint 기능 Request Response POST / todo 아이템 추가 { "title":"자료구조 공부하기" } { "id":17, "title":"자료구조 공부하기", "order":0, "completed":false, "url":"http://localhost:8080/17" } GET / 전체 todo리스트 조회 - [ { "id":1, "ti..

240127_03.IntelliJ 인텔리제이 단축키 기본2

IntelliJ 인텔리제이 단축키 기본2 맥 Mac 윈도우 Windows Live template Command + J Ctrl + J ㄴpsvm 메인메소드 생성 public static void main(...; ㄴsout 생성 System.out.println(); 단축키를 눌러 저장 된 라이브 템플릿 확인 가능 퀵픽스(코드 에러 수정) Option + Enter Alt + Enter 코드 이슈별 이동 F2(다음) Shift + F2(이전) F2(다음) Shift + F2(이전) 상단 Import 최적화(불필요 임포트 삭제) Ctrl + Option + O Ctrl + Alt + O 코드 생성 (getter/setter 등) Command + N Alt + Insert 메서드 자동 완성 ㄴoverri..

240127_02.IntelliJ 인텔리제이 단축키 기본1

IntelliJ 인텔리제이 단축키 기본1 IntelliJ 인텔리제이 단축키 기본1 맥 Mac 윈도우 Windows 좌측 프로젝트 창 포커스 Command + 1 Alt + 1 ㄴ (프로젝트창 포커스 상태)에디터 복귀 Esc Esc ㄴ (프로젝트창 포커스 상태)클래스파일 미리보기 Space Space 에디터 창 최대화복귀 Shift + Command + F12 Ctrl + Shift + F12 에디터 탭(창) 이동 Ctrl(유지) + Tab Ctrl(유지) + Tab 새파일 생성 ㄴ(에디터에서)새파일 생성 Ctrl + Option + N Ctrl + Alt + Insert ㄴ(프로젝트 창에서)새파일 생성 Command + N Alt + Insert 커서 이동 ㄴ단어별 이동 Option + 좌/우 방향키 ..

220226_스프링 입문_스프링의 기능을 활용해보자_Spring Boot Validation_패스트캠퍼스 챌린지 34일차

220226_스프링 입문_스프링의 기능을 활용해보자_Spring Boot Validation_패스트캠퍼스 챌린지 34일차 [스프링 입문_스프링의 기능을 활용해보자_Spring Boot Validation] 1. Validation : 프로그래밍에 있어서 가장 필요한 부분 : Java에서는 null값에 대해 접근할 때, null pointer exception이 발생하므로 , 이 부분에 대한 방지를 위해, 미리 검증 하는 과정 ex) public void run(String account, Spring pw, int age){ if(account == null || pw == null){ return; } if(age == 0){ return; } //정상 logic } (1) 검증해야 할 값이 많은 경우..

개발새발/Spring 2022.02.26

220225_스프링 입문_스프링을 조금 더 들여다보기_여러가지 Annotation 알아보기_패스트캠퍼스 챌린지 33일차

220225_스프링 입문_스프링을 조금 더 들여다보기_여러가지 Annotation 알아보기_패스트캠퍼스 챌린지 33일차 [스프링 입문_스프링을 조금 더 들여다보기_여러가지 Annotation 알아보기] 1. Spring Boot Annotations Annotation 의미 @SpringBootApplication Spring boot application 으로 설정 @Controller View를 제공하는 controller로 설정 @RestController REST API를 제공하는 controller로 설정 @RequestMapping URL 주소를 맵핑 @GetMapping Http GetMethod URL 주소 맵핑 @PostMapping Http PostMethod URL 주소 맵핑 @Put..

개발새발/Spring 2022.02.26

220224_스프링 입문_스프링을 조금 더 들여다보기_ObjectMapper 실무 사례 알아보기_패스트캠퍼스 챌린지 32일차

220224_스프링 입문_스프링을 조금 더 들여다보기_ObjectMapper 실무 사례 알아보기_패스트캠퍼스 챌린지 32일차 [스프링 입문_스프링을 조금 더 들여다보기_ObjectMapper 실무 사례 알아보기] 1. 실습 (1) File > New > Project > Gradle > Java 체크 > Next 클릭 (2) Name: object_mapper > Finish 클릭 (3) Maven Repository 에서 Jackson Databind 디펜던시 가져오기 https://mvnrepository.com/ -> object mapper 검색 > Jackson Databind 선택 > 2.12.1 버전 선택 -> Gradle 선택 > 텍스트 박스 내용 복사 > build.gardle 의 dep..

개발새발/Spring 2022.02.24

220223_스프링 입문_스프링을 조금 더 들여다보기_ObjectMapper_패스트캠퍼스 챌린지 31일차

220223_스프링 입문_스프링을 조금 더 들여다보기_ObjectMapper_패스트캠퍼스 챌린지 31일차 [스프링 입문_스프링을 조금 더 들여다보기_ObjectMapper] 1. Object Mapper : JSON 형식을 사용할 때, 응답을 직렬화, 또는 요청을 역직렬화 할 때 사용한다 2. 직렬화 Serialize : 데이터를 전송하거나 저장할 때 바이트 문자열 이어야 하므로, 객체들을 문자열로 바꾸어 줌 : Object -> String 3. 역직렬화 Deserialize : 데이터가 모두 전송 되고, 수신측에서 문자열을 다시 기존의 객체로 회복시켜 주는 것 : String -> Object 4. JSON Javascript Object Notation : "key" : "value" 쌍으로 이루어..

개발새발/Spring 2022.02.23

220222_스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(2)_패스트캠퍼스 챌린지 30일차

220222_스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(2)_패스트캠퍼스 챌린지 30일차 [스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(2)] 지난 게시물에서 이어집니다 https://mylife4hi.red/59 220221_스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(1)_패스트캠퍼스 챌린지 2 220221_스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(1)_패스트캠퍼스 챌린지 29일차 [스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(1)] 1. 실습 (1) File > New mylife4hi.red 2. 실습 (1) aop 패키지에 TimerAop 클래스 추가 package com.e..

개발새발/Spring 2022.02.23

220221_스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(1)_패스트캠퍼스 챌린지 29일차

220221_스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(1)_패스트캠퍼스 챌린지 29일차 [스프링 입문_스프링을 조금 더 들여다보기_AOP 실무 사례 알아보기(1)] 1. 실습 (1) File > New > Project > Spring Initializr : Artifact(aop), Language(Java), Java(11), Packaging(Jar) : Spring Web 체크 (2) AOP 사용을 위해서는 Dependencies를 추가해야함 : Spring에 있는 수많은 모듈들은 원하는 것만 골라 사용할 수 있다. : bundle.gradle > (다음 문장 추가) implementation 'org.springframework.boot:spring-boot-start..

개발새발/Spring 2022.02.21