본문 바로가기

반응형

전체 글

(44)
@NoArgsConstructor 가 뭔데? JPA 를 쓰면서 엔티티에 어노테이션들을 기본적으로 많이 쓸텐데당연시하게 쓰는거부터 다시 차근차근 공부하겠다는 마음으로 글을 써본다. args -> arguments(인수)'의 줄임말인수 생성 안해도 되는 어노테이션이 @NoArgsConstructor 왜 jpa entity에는 생성자를 만들어야할까 jpa는 데이터를 db에서 조회한 뒤 객체를 생성할 때 reflection을 사용하기 때문이다.여기서 reflection 은 생성자가 있어야 돌아간다는거지~~! All은 걍 entity에 뭐 title, name 있으면2개 인수가 모두 들어간 생성자를 만들어준다는거임~~ㅎㅎ 이제 알고쓰자!
JPA 엔티티 어노테이션 완전 정리 가이드 JPA 엔티티 어노테이션 완전 정리 가이드목차Lombok 어노테이션JPA 기본 어노테이션관계 매핑 어노테이션Hibernate 특화 어노테이션생명주기 어노테이션1. Lombok 어노테이션1.1 @Getter설명: 필드에 대한 getter 메서드 자동 생성사용 예시: @Getter private String name;장점: 보일러플레이트 코드 제거, 가독성 향상단점: 디버깅 시 메서드가 보이지 않음사용 빈도: 매우 높음 (5/5)1.2 @Setter설명: 필드에 대한 setter 메서드 자동 생성사용 예시: @Setter private String name;장점: 보일러플레이트 코드 제거단점: 불변성 보장 어려움사용 빈도: 높음 (4/5)1.3 @NoArgsConstructor설명: 파라미터 없는 기본 생성..
objectMapper.readValue의 class를 똑바로 적어야 하는 이유 gpt랑 대화하면서 필요한 부분만 정리한 내용아 궁금했는데 개꿀이다... 1️⃣ 제네릭(Generic)이란 무엇인가?제네릭은 **“타입을 파라미터처럼 넘기는 기능”**이다.예를 들어 List라는 상자가 있다고 생각해보자.제네릭이 없는 리스트 → 어떤 물건이든 다 들어가는 상자제네릭이 있는 리스트 → “문자만 넣을 수 있는 상자”처럼 타입을 제한한 상자✔️ 예시 List names = new ArrayList(); ➡ “이 리스트에는 String만 넣을 수 있다”라는 뜻2️⃣ 왜 제네릭이 필요한가?✔️ (1) 잘못된 타입을 컴파일 타임에 잡아준다제네릭이 없으면: List list = new ArrayList(); list.add("hello"); list.add(123); // 숫자도 들어감 나중에 꺼낼..
gitattributes가 뭐임? 보통 java + gradle 프로젝트 세팅 많이 하는데딱히 신경 안쓰고 지나가던 파일인데함 확인해보자 LF 는 "\n", CRLF 는 "/r" 1. /gradlew text eol=lf의미: 루트의 gradlew 파일을 텍스트로 취급하고 줄바꿈을 LF로 통일 이유: Unix/Linux 스크립트는 LF가 필요하며, Windows에서도 Git이 자동 변환 2. *.bat text eol=crlf 의미: 모든 .bat 파일을 텍스트로 취급하고 줄바꿈을 CRLF로 통일 이유: Windows 배치 파일은 CRLF가 필요3. *.jar binary 의미: 모든 .jar 파일을 바이너리로 취급 이유: .jar는 압축 파일이므로 줄바꿈 변환을 하지 않음왜 필요한가? 크로스 플랫폼 호환성: Windows/Linux/M..
REDIS 기초 개념 [1] 하 티켓 서비스 재고 관리를 해야하는데REDIS 공부를 좀 해야할 것 같다. 스프링 시큐리티 다룰 때랑 sso 통합 로그인 할 때 사용해본 적은 있는데이때는 기초적인 연결만 다뤘는데 이번엔 좀 다른 듯 Redis 한 줄 정의인메모리 Key-Value DB. 매우 빠르고, 명령 1개는 항상 원자적(중간에 끼어들기 없음).다양한 자료형을 제공해서 카운터, 큐/스택, 랭킹, 만료, 스트림 등을 쉽게 구현.꼭 알아야 할 자료형(큐/스택과 직결) String숫자 카운터·토큰SET, GET, INCRBY, DECRBY, SET NX EX(멱등/TTL)List큐/스택(선입선출/후입선출)LPUSH, RPUSH, LPOP, RPOP, BLPOP, BRPOPZSet(정렬집합)우선순위 큐, 지연 큐(시간 점수)ZADD, Z..
[Server] HTTP, HTTPS, SSL 인증서로 가오 잡는 법 SSL 인증서를 발급 받아야 한다는 이야기를 사내에서 종종 듣는다.http 에 s를 붙여주는 작업인데s가 안붙은 사이트는 안전하지 않은 사이트라고 크롬에서 경고를 날리는 페이지를 종종 본 적이 있을 것이다. 그걸 해결해주는게 SSL 인증서 인건가 ?? 의문점이 들었다. 오늘은 SSL 인증서가 뭔지, 그리고 그 뒤에 따라오는 다른 개념들에 대해 정리해보는 시간을 가져보려고 한다.  우선 http 가 뭔지 모를 수 있으니 잠깐 스피드웨건 등장HTTP 란? HyperText Transfer ProtocolHTML과 같은 HyperText문서를 주고 받기 위해 만들어졌고, 최근에는 HTML뿐 아니라 모든 웹 관련 API통신에이용하고 있는 통신 프로토콜 엥 프로토콜이 뭐지 ? 할 수 있으니 다시 등장 프로토콜 이..
[Server] 왜 우리 회사는 Nginx 를 자주 쓸까 ? 내가 담당하는 프로젝트는 보통 AWS에서 서버 세팅을 마친 소스 코드만 올리는 형태의 업무가 많다보니프로젝트 설정, 배포 관련해서는 연차에 비해 부족한 점이 많다. 서버에 배포할 시기가 되면 꼭 엔진엑스, ssl 인증서 등 다양한 서버 관련된 이야기가 오가는데무슨 말을 하는지 잘 모르겠고 대화에 끼기 어려웠다. 부족한 점을 채울 겸, 블로그에 글도 쓸 겸 공부한 내용을 공유해보려고 한다. Nginx 는 웹 서버 중 하나라고 하는데 웹 서버가 무엇인지부터 알아보자. Web Server클라이언트의 요청에 따라 정적 파일을 응답하여 제공하는 소프트웨어 그럼 WAS 는 뭐지 ? 싶으면 아래의 글을 참고하길 바람. 요약 : 웹 애플리케이션 서버(Web Application Server, 약자 WAS)는 웹 애플리..
[SPRING] 왜 학교나 학원에서 MVC 패턴을 항상 공부할까? java 공부를 하게 되면 보통 게시판을 만들게 되는데, mvc 패턴이라는게 책이나, 수업 자료에 꼭 있기 마련이다. 사람이 받아쓰기를 할 때 음성이 들리면 종이에 문자를 적어서 보여주는 것 처럼이런 행동들을 순서, 양식에 맞게 패턴을 만드는 것 다시 말해 개발 패턴이 Model , View, Controller 3개로 패턴이 흘러간다는 것이다. MVC 패턴 Model-View-Controller 의 약자 처음 배우는 입장에서 패턴은 익숙치 않고, 거부감이 들었다.   돌이켜보면, 리마인드 하는게 좋을 듯 하여 글을 쓰게 되었다.    MVC 모델은 2가지로 나뉘는데 MVC MODEL 1 은 예전 모델이다. View 의 역할이 불분명하여 비지니스 로직이 view의 영역에 침범하는 경우가 있다.예를 들어서..

반응형