전체 글
-
[Vue.js] Vue2 => Vue3로 이전하며 Pinia가 localStorage에 데이터를 저장하지 않았던 이슈!Vue.js 2023. 1. 4. 14:04
Vue2에서 Vue3로 이전하며 기존에 정상적으로 동작하던 Pinia가 데이터를 localStorage 저장하지 못했다. 사실 이슈라기 보다는 그냥 단순히 세팅의 문제였는데, 다음에 똑같은 일이 발생하지 않기 위해 기록한다! 기존 package.json "dependencies": { ... "pinia": "...", "pinia-plugin-persistedstate": "...", ... }, 신규 package.json "dependencies": { ... "pinia": "...", "pinia-plugin-persist": "...", ... }, 우선 Pinia 데이터를 전역으로 공유하기 위해 데이터를 sessionStorage나 localStorage등에 저장하는 것을 도와주는 라이브러리..
-
[JPA] JPA 꿀팁 저장소Java 2022. 12. 19. 15:30
1. Entity에 @NoargsConstructor의 AccessLevel이 Protected인 이유 https://erjuer.tistory.com/106 [JPA] Entity Class의 @NoargsConstructor (access = AccessLevel.PROTECTED) 실무에서 JPA를 활용하다보면 Entity 생성시 @NoargsConstructor (access = AccessLevel.PROTECTED) 이라는 Annotation을 붙여서 개발을 하게 된다. 이에 조금 더 정확히 이해하고자 이번 블로그 글로 언급하고자 한 erjuer.tistory.com 내부적으로 Proxy 사용과 관련이 있음 Private으로 처리하면 Proxy 생성 중 오류가 발생한다. 2. N + 1 발생하..
-
[Java] 자바 기초 다지기!Java 2022. 12. 14. 23:38
최근에 프론트(Vue.js)만 하다가 다시 API를 개발하게 되었는데.. 보는 것마다 새롭고 내가 자바를 너무 모르고 있다는 것을 깨달았다. 그래서 꾸준히 자바의 정석 책을 보면서 기초를 확실하게 다지고자 한다. 자바 Primitive type memory 리터럴 리터럴은 그 자체로 값을 의미하는 것. int year = 2022; // year : 변수 // 2022 : 리터럴 final int MAX_VALUE = 100; // MAX_VALUE : 상수 // 100 : 리터럴 인코딩과 디코딩 문자 'A'를 유니코드로 인코딩하면 65 반대로 65를 유니코드로 디코딩하면 문자 'A' 문자를 코드로 변환하는 것 문자 인코딩 코드를 문자로 변환하는 것 문자 디코딩 아스키 (ASCII) American St..
-
[JPA] JpaRepository, CrudRepository에 @Repository 없어도 되는 이유Java 2022. 12. 5. 15:17
https://www.inflearn.com/questions/110045/jparepository%EB%82%98-crudrepository-%EA%B0%99%EC%9D%80-%EC%9D%B8%ED%84%B0%ED%8E%98%EC%9D%B4%EC%8A%A4%EC%97%90-repository-%EC%96%B4%EB%85%B8%ED%85%8C%EC%9D%B4%EC%85%98%EC%9D%B4-%EC%95%88%EB%B6%99%EB%8A%94-%EC%9D%B4%EC%9C%A0%EC%97%90-%EB%8C%80%ED%95%B4%EC%84%9C-%EA%B6%81%EA%B8%88%ED%95%A9%EB%8B%88%EB%8B%A4₩ 어떤 레퍼런스보다 믿음이 가기에 저장.
-
[ETC] API url에 /api/v1를 붙이는 이유ETC 2022. 12. 3. 19:54
https://stackoverflow.com/questions/70440506/why-do-we-have-to-put-api-in-front-of-routes Why do we have to put api in front of routes? I am learning express and the http methods, but I cannot find any documentation on it. Is /api/value just for the json data, like an address just for that data? Just any extra info on it would be stackoverflow.com api prefix 꼭 필요한 것은 아니다. API url에 api prefix가 붙어..
-
[MSA] MSA 레파지토리MSA 2022. 11. 30. 15:33
Gateway application.yml server: port: 8000 spring: profiles: active: local application: name: gateway cloud: gateway: routes: - id: demo-service # 게이트웨이와 연결될 서비스의 이름 uri: http://demo-service:8001 # #게이트웨이로 연결될 서비스 uri predicates: #게이트웨이로 연결될 서비스의 url 패턴 - Path=/demo/** filters: - RemoveRequestHeader=Cookie - RewritePath=/demo/(?.*), /$\{segment} - AuthenticationFilter default-filters: - name: 필터..
-
[Docker] 나를 위한 도커 개념 정리Docker 2022. 11. 23. 10:25
수시로 도커를 접하면서 접할 때마다 "도커가 정확히 뭐지?"라는 의문을 해소하기 위한 나만의 정리 글. 도커란 무엇인가? 도커는 컨테이너 기반의 오픈소스 가상화 플랫폼. 어떠한 프로그램도 컨테이너로 만들 수 있고, 어떠한 환경에서도 실행가능하다.(ex: AWS, GCP...) 그렇다면 도커는 가상머신인가? 가상머신 처럼 독립적으로 실행되지만 가상머신보다 빠르고 가상머신보다 쉽고 가상머신보다 효율적이다. 도커의 특징 확장성/이식성 도커가 설치되어 있다면 어디서든 컨테이너를 실행할 수 있음 특정 회사나 서비스에 종속적이지 않음 쉽게 개발서버를 만들 수 있고 테스트서버 생성도 간편함 표준성 도커를 사용하지 않는 경우 각 언어로 만든 서비스들의 배포 방식은 서로 상이함 컨테이너라는 표준으로 서버를 배포하므로 모..
-
[자바/Java] val & varJava 2022. 11. 21. 10:12
val Java는 JavaScript 같은 동적 타이핑 언어와 다르게 변수를 선언할 때 타입을 명시해줘야 한다. 하지만 lombok에서 제공하는 val이라는 키워드를 사용하면 마치 동적 타이핑 언어처럼 변수를 선언할 수 있다. (final 키워드도 적용됨) 예시 val ids = new ArrayList(); // 아래와 같음 final ArrayList ids = new ArrayList(); 위 처럼 간결하게 코드를 작성할 수 있다. var var는 val에서 final 키워드가 제거된 것과 같다. (변수 재할당 가능) 참조 : https://blog.naver.com/hty018/222932828887
-
[TypeScript] 맘대로 기록.TypeScript 2022. 11. 19. 16:32
1. 에러를 사전 방지할 수 있다. function add(a: number, b: number): number { return a + b; } add(10, '20'); // Error! 잘못된 타입의 파라미터 사용, 의도하지 않은 리턴값 등을 사전에 방지할 수 있음. 2. 함수 구조 정의가 가능하다. interface SumFunc { (a: number, b: number): number; } var sum = SumFunc; sum = function(a: number, b: number): number { return a + b; } 3. 인덱싱 정의. interface StringArray { [index: number]: string; // index는 number 타입, 배열의 요소는 st..