본문 바로가기

Back-End

(91)
Spring annotation - @Service,@Controller,@Component 차이 Spring Documentation Spring 문서를 보면 역할에 맞게 쓰라고 되어 있는데 무엇이 차이인지 정확히 모르겠다. 그래서 조금 더 자료를 찾아봤다. @Component Spring에서 관리되는 객체임을 표시하기 위해 사용하는 가장 기본적인 annotation이다. 즉, scan-auto-detection과 dependency injection을 사용하기 위해서 사용되는 가장 기본 어노테이션이다. @Controller Web MVC 코드에 사용되는 어노테이션이다. @RequestMapping 어노테이션을 해당 어노테이션 밑에서만 사용할 수 있다. @Repository 다 알고 있듯이 data repository를 나타내는 어노테이션이다. @Repository는 플랫폼 특정 exception을..
Adyen 3D Secure 2 통합하기 3D Secure 2 with your Classic integration API를 이용한 통합 방법이다. /payments : https://docs.adyen.com/api-explorer/#/PaymentSetupAndVerificationService/v41/payments 1. 인증 절차를 진행하기 위해서 3D Secure 2 Object가 담긴 Payment Request를 제출한다. ResultCode로 다음 절차 진행 2.
Spring DataIntegrityViolationException 에러 org.springframework.dao.DataIntegrityViolationException 에러는 lower level persistence exception과 관련된 것이다. Hibernate와 관련된 exception 1. ConstraintViolationException 2. PropertyValueException 3. DataException : sql문이 잘못되거나 data가 잘못된 경우이다. JPA와 관련된 exception javax.persistence.EntityExistsException. https://www.baeldung.com/spring-dataIntegrityviolationexception
백앤드 개발자 면접 준비 리스트 Spring Boot 관련 질문 Spring 빈관리 Spring이란? Spring AOP란? Spring 서비스 추상화란? 스프링 트랜잭션 어떻게? 스프링 DI 어떻게? POJO 무엇? Put vs Post 구현시 차이점 JPA 관련 질문 JPA란 무엇인가? 왜 사용하는가? JPA 없이 개발했을 때의 문제점? ( 객체 데이터베이스 패러다임 불일치 ) N+1 문제 어떻게? DB isolation(격리수준)에 관하여? Flush mode? ( auto, commit, manual ) Persistence Context란 무엇인가? Persistence Context를 사용하는 이점? 성능 이슈 및 개선 경험? OSIV란? 1차 캐시 이점 ? -> 성능상 이점, 애플리캐이션 단의 read commited 레벨..
0. Adyen 개요 온라인 결제웹사이트나 모바일 앱에서 adyen 온라인 결제 솔루션을 사용할 수 있다. 카드,지갑, key 로컬 결제 방법을 이용하여 지불할 수 있다. adyen 솔루션을 이용하면 고객들이 선호하는 결제수단을 선택할 수 있다. adyen 솔루션을 적용하면, 아래와 같은 것을 할 수 있다. 결제가 이루어지는 고객의 국가코드, 통화, 플랫폼과 같은 결제 내역을 기반으로 다양한 결제 수단을 제공할 수 있다. 사용자의 요구사항에 맞게 통합하는 방법을 선택할 수 있다. 적용이 완료되면, 아래와 같은 것들도 추가로 할 수 있다.반복 결제를 하는 고객의 상세정보를 토큰화 할 수 있다. 3D Secure를 이용하여 메이저 카드 결제를 인증할 수 있다.adyen에서 제공하는 다른 기능들을 사용하여 수익을 최적화하고 사기를..
Lombok 사용하기 Intellij에 설정하기 : http://blog.egstep.com/java/2018/01/12/intellij-lombok/get/set 함수 너무 많아..
Persistence Framework에 관하여 ( 장,단점 ) ORM이란?객체 데이터베이스 데이터 자동 매핑 ( Object Relational Mapping ) Persistence란?데이터를 생성한 프로그램이 종료되더라도 사라지지 않는 데이터 Persistence Framework?데이터베이스와의 연동되는 시스템을 빠르게 개발하고 안정적인 구동을 보장해주는 프레임워크 종류SQL Mapper : SQL문장으로 직접 데이터베이스 데이터를 다루는 SQL Helper ( Mybatis )ORM : 객체를 통해 간접적으로 데이터베이스를 다루는 ORM ( Hibernate, JPA ) Persistence Framework를 사용하면 좋은 점DBMS에 대한 종속성이 줄어든다.DBMS 교체작업 때 해야할 일이 줄어든다.자바 객체에 매핑되어 있기 때문에 자바의 기능 ( equ..
노드 프로젝트를 깔끔하게 작성하기 기본적인 자바스크립트 깔끔한 코드 작성https://github.com/qkraudghgh/clean-code-javascript-ko변수 이름 짓기 : 깔끔하고 의미 내포함수 한가지 행동알수있는 이름중복 제거매게변수로 플래그 사용 금지조건문을 캡슐화하기명령형 -> 함수형프로그래밍부정 조건문 사용 금지조건문 작성을 피하라객체 & 자료구조클래스단일 책임 원칙 (SRP)개방/폐쇄 원칙 ex : 면적 계산하는 놈 / 원 / 사각형 )인터페이스 분리 원칙의존성 역전 원칙메소드 체이닝을 상요하세여상속보단 조합을 사용하세요테스트동시성Callback => async,await에러 처리단순히 출력만 하지 마세요포맷팅회사에 맞추세요주석주석이 많다는건 코드가 더럽다는 것코드 위치 설명 X코드 기록 남기지 마세요Node C..
3. 노드 기능 알아보기 util 모듈 ( promisify, depricated )// util 모듈const util = require('util');const crypto = require('crypto'); // deprecated method임을 알려 줄 때 사용const dont_use_me = util.deprecate((x,y)=>{ console.log(x+y);},'이 함수는 이제 안 쓸거에요~'); dont_use_me(1,2); // DeprecationWarning이 출력됨 // callback -> promiseconst randomBytesPromise = util.promisify(crypto.randomBytes);const pbkdf2Promise = util.promisify(crypto.pbk..
1. Node.js 개요 새로운 스타트업에 이직을 하게 되었는데 이 곳은 Spring 대신 Node.js를 사용하고 있어 공부를 시작하게 되었습니다. Node.js에 대한 이해를 위하여 Node.js 디자인패턴 ( Node.js design pattern ) 책 전체를 단원별로 리뷰해보려 합니다. Node.js 플랫폼에 관하여몇 가지 원칙과 디자인 패턴들을 보면, 그 자체로 Node.js 플랫폼과 그 생태계의 개발 기술을 알 수 있다고 합니다. 단원별로 차근차근 공부를 하게 되면 진짜 Node.js의 철학을 이해할 수 있겠죠. Node.js 철학경량 코어코어 기능을 최소한으로 하고 나머지를 사용자의 몫으로 넘겼습니다. 이 덕에 유지보수 측면에서 편리해지고, 전체 생태계의 발전에 긍정적인 문화를 가져올 수 있었습니다. 경량 모듈이..