본문 바로가기
TIL WIL

20220714 TIL

by Youngin 2022. 7. 14.

배포를 앞두고 게시글의 숫자가 보기 싫어서

DB에 데이터가 많이 없을 때, application.properties 에서 이걸 변경해서 해결?했던 기억으로 이걸 돌렸다가..

DB의 데이터들이 사라졌고...그래서 관련 정보를 다시 찾아보았다...

spring.jpa.hibernate.ddl-auto=update

ddl-auto 옵션 종류

  • create: 기존테이블 삭제 후 다시 생성 (DROP + CREATE)
  • create-drop: create와 같으나 종료시점에 테이블 DROP
  • update: 변경분만 반영(운영DB에서는 사용하면 안됨)
  • validate: 엔티티와 테이블이 정상 매핑되었는지만 확인
  • none: 사용하지 않음(사실상 없는 값이지만 관례상 none이라고 한다.)

주의할 점

  • 운영 장비에서는 절대 crate, create-drop, update 사용하면 안된다.
  • 개발 초기 단계는 create 또는 update
  • 테스트 서버는 update 또는 validate
  • 스테이징과 운영 서버는 validate 또는 none

하지만 로컬 환경을 제외한 나머지 서버에서는 최대한 직접 쿼리를 날려서 적용하는 것이 가장 좋다.

참고) JPA DDL, 운영 환경시 설정 (안정적)
spring.jpa.hibernate.ddl-auto=validate
spring.jpa.generate-ddl=false
spring.jpa.show-sql=true

 

결론적으로 각 키워드를 용도와 목적에 사용하는것이 우선이고,
개발/운영할 때는 다른 키워드를 사용해야 함을 배웠다.

 

 

이 글을 참고했지만, 2번째 글은 더 자세히, 여러 토픽을 다루고 있다.

https://smpark1020.tistory.com/140?category=857916 

 

ddl-auto 옵션 관련 주의할 점!!!!!!!!!

얼마전에 개발바닥 호돌맨님의 재난급 서버 장애내고 개발자 인생 끝날뻔 한 썰을 보게 되었다. 나처럼 JPA를 많이 안써본 사람들이 보면 아주 도움될 영상이다🤣🤣 결론은 spring.jpa.hibernate.ddl-a

smpark1020.tistory.com

https://luvstudy.tistory.com/185

 

Spring Boot Database Initialization

Spring Boot를 사용하면서 DataSource initialization에 대한 여러 방법을 알아보자. https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.data-initialization “How-to” Guides..

luvstudy.tistory.com

https://ykh6242.tistory.com/entry/2020-12-16-TIL

 

2020-12-16 TIL

1. Spring JPA를 이용한 데이터베이스 초기화 방법 1 2 spring.jpa.hibernate.ddl-auto= spring.jpa.generate-dll=true cs 외부설정에 위와 같은 속성을 추가해주면 동작함. ddl-auto 속성은 create, create-drop,..

ykh6242.tistory.com

 

자바스크립트 공백제거 정규표현식

혹시나 " " -> "" 이렇게 replace를 할 수 있지 않을까 했지만,

그렇게 호락호락하지 않았다...

 

방법은 2가지를 찾을 수 있었는데 2번째 방법을 사용했다

2번째 방법에서 쓰인 s는 정규표현식에서 공백을 의미하는 코드로 사용된다고 한다.

 

1.  text.replace(/ /gi, "")

var regText = "   123   45 6   ";    // 문자열을 regText변수에 저장함
regText.replace(/ /gi, "");    // 모든 공백을 제거

console.log(regText);

2. text.replace(/\s/gi, "")

var regText = "    123 45 6  ";
regText.replace(/\s/gi, "");     // 위와 같이 모든 공백을 제거

console. log(regText)

 

유의할점!

자바스크립트의 replace함수는 파이썬과 다르게

맨 처음에 일치하는 것 하나만 바꿔주고 끝난다.

바꾸고 싶은 텍스트 전체에 적용시키려면   global option 을 적용하자!

=> text.replace(/ /gi, "") 와 같이 정규식 뒤에 gi를 붙이는 방법을 사용할 수 있다.

 

 

https://webisfree.com/2014-01-09/[%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8]-replace()-%EB%AC%B8%EC%9E%90-%EB%B3%80%ED%99%98-%EC%B9%98%ED%99%98 

 

[자바스크립트] replace() 문자 변환, 치환

자바스크립트를 사용해 특정 문자를 다른 문자로 치환하는 방법에 대하여 알아볼까합니다. 먼저 사용할 메소드는 replace() 입니다.

webisfree.com

 

 

유효성 검사 어디까지 할것인가? = 프론트와 백 둘 다에 해주자~~!

프론트에 유효성 검사를 추가해놨었는데

백엔드에도 할 수 있다는 이야기를 들었고

한쪽만 해야하는 건가 아님 백엔드에 하는게 정석인가 고민하다가 튜터님께 여쭤봤더니

둘 다 하는게 좋다고 하셨다.

프론트는 ux적인 느낌으로 하는 거고, 실제 서비스에서는 굳이 postman 날리는 사람들이 있을 수 있다고...

 

 

백엔드의 또 다른 정의

= 큰 틀에서 필요한 api를 구현해놓는것

 

프로그래머, 소프트엔드 엔지니어와 (성장)기회들!

->기회와 자리를 만들어갈 수 있는 직업

-> 카카오 쿠폰파트에 100명도 넘게 있다지만, 다양한 곳에서 성장할 수 있는 기회들이 많음

'TIL WIL' 카테고리의 다른 글

WIL  (0) 2022.07.17
20220715 TIL  (0) 2022.07.17
20220713 TIL  (1) 2022.07.13
20220712 TIL  (0) 2022.07.12
20220711 TIL  (1) 2022.07.11