본문 바로가기

반응형

Spring boot

(21)
NoSQL vs SQL 선착순 쿠폰 이벤트 개발을 위해서 NoSQL 중 일종인 Redis를 사용해야 하는가?? 아니면 MySQL로 JPA에서 지원하는 LOCK을 사용해야 하는가?? LOCK을 사용한다면 비관적 락 (Pessimistic Lock) vs 낙관적 락 (Optimistic Lock) 어떤걸 사용해야 하는가?비관적 락(Pessimistic Lock)비관적 = 앞으로의 일이 잘 안될 것이라고 보는 것.트랜잭션 충돌이 발생한다는 가정하에 우선 락을 걸고 보는 방식데이터베이스에서 사용하는 락 사용 (PESSIMISTIC_FORCE_INCREMENT 모드가 아니라면, 버전 정보 사용안함)SELECT ~ FOR UPDATE 구문 사용낙관적 락 (Optimistic Lock)낙관적 = 앞으로의 일 따위가 잘되어 갈 것으로 여기는..
Spring boot 끄적 끄적(2) 1. 엔티티로 객체를 생성할때.....   이렇게 설정해주면 따로 id 값을 지정하고, 뭐 id++ 하면서 저장할 필요 없이 알아서 생성해준다@Id 는 DB에서 Primary Key를 의미한다참고로 @Entity 객체 안에는 @Id를 가지 변수가 존재해야 한다.JPA는 이 어노테이션을 통해 각각의 객체를 구분한다 @GeneratedValue를 통해 Id 생성 전략 설정 가능하다IDENTITY : 기본키 생성을 DB에 위임한다. mysql 은 AUTO_INCREMENT 이다.@Column을 통해 테이블의 Id가 DB에 매핑될때 컬렴명이 "user_id" 로 매핑된다. 2. @Enumerated 어노테이션이란?  생각해보니 DB 테이블의 컬럼의 도메인 값은 보통 뭐 VAR CHAR(15) 또는 , INT 이..
왜 HTTP Status Code를 사용해야하는가?? 현재 스프링없이 바닐라 JAVA로 WAS를 구현하고 있다.//404헤더를 보내준다 private void response404Header(DataOutputStream dos) { try { String body = "404 Not Found"; byte[] bodyBytes = body.getBytes("UTF-8"); dos.writeBytes("HTTP/1.1 200 OK \r\n"); dos.writeBytes("Content-Type: text/html ;charset=utf-8\r\n"); dos.writeBytes("Content-Length: " + bodyBytes.l..
Spring boot 생성자 주입 vs 필드 주입 생성자 주입 vs 필드 주입 위에 mSer는 final과 같이 선언되었고 밑에서 생성자로 의존성을 주입 해 주었다.2번째 mForm는 그냥 @Autowired 어노테이션으로 필드 주입을 해 주었다. 하지만 final로 선언 할 수 가 없다mSer 방식을 생성자 주입 이라고 하고 mForm을 필드 주입이라고 한다.막상 구현 할 때는 차이를 몰랐는데 자세히 구글링 해보니 차이를 알게 되었다.일단 기본적으로 스프링 팀에서는 생성자 주입을 추천한다고 한다.  생성자 주입 방식의 3가지 장점!!1. 순환 참조 방지필드 주입 방식이면, 순환 참조가 되어도 일단 서버가 구동이 된다. 하지만 생성자 주입 방식이면 아예 서버가 구동이 안되서 사전에 순환 참조를 감지하고 방지할 수 있다. 이 차이는 필드 주입과 생성자 주..
Spring boot 끄적 끄적(1) 혼자서 이것저것 개발해보면서 깨달은 것들 모음집 !!  1. 템플릿 파일은 꼭! 컨트롤러를 통해야 한다 처음 홈에서 다른 화면으로 넘어갈 때 그냥 dfdf 대충 이렇게 같은 폴더안에 다른 html파일을 참조 할 수 있을 줄 알았다. 하지만 이게 웬걸 계속 오류가 나왔다. 구글에 검색하니 나랑 똑같은 질문을 누군가 인프런에 해서 답변을 확인 할 수 있었다. https://www.inflearn.com/questions/59046/template%EC%97%90%EC%84%9C-a%ED%83%9C%EA%B7%B8%EB%A1%9C-%EB%A7%81%ED%81%AC-%EC%B0%B8%EC%A1%B0%EA%B0%80%EB%8A%A5%ED%95%98%EA%B2%8C-%ED%95%98%EB%8A%94-%EB%B0..

반응형