FRAMEWORK

·FRAMEWORK/Spring
들어가기 전에 구글링을 통해 소셜 로그인 구현을 찾아보면, 하기 라이브러리들을 통한 구현이 많습니다. implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-oauth2-client' 이 경우, 주로 back-end(JAVA)에서 소셜 로그인을 A to Z까지 진행하는 경우가 많습니다. 만약, 필요한 것이 back-end에서 로그인을 전부 하는 것이라면 하기 글이 도움되지 않을 수 있습니다. 해당 부분 고려하시어 보시면 좋을 것 같습니다😄 이번 프로젝트의 경우, front-end에서 로그인을 진행하고, 로그인 이후 얻은 acc..
·FRAMEWORK/Spring
이슈 원인 @ConfigurationProperties를 사용하여 yaml의 특정 설정값들을 읽으려했고, 이때 하기와 같이 Spring Boot Configuration Annotation Processor not configured 에러가 발생했습니다. 해당 이슈를 해결하고자 build.gradle의 dependencies에 하기와 같이 설정을 한 후, gradle clean 및 build를 진행했습니다. dependencies { ... annotationProcessor "org.springframework.boot:spring-boot-configuration-processor" // Use ConfigurationProperties } build가 되었을 때, 위와 같은 에러는 더이상 발생하지 ..
·FRAMEWORK/Spring
들어가기 전에하기 포스팅은 스프링 부트와 AWS로 혼자 구현하는 웹 서비스(이동욱 저)를 공부하여 작성한 내용입니다.템플릿 엔진웹 개발에 있어 템플릿 엔진이란, 지정된 템플릿 양식과 데이터가 합쳐져 HTML 문서를 출력하는 소프트웨어를 의미합니다.서버 템플릿 엔진 예: JSP, FreemarkerJSP의 경우 명확한 서버 템플릿 엔진은 아니나, View의 역할만 하도록 구성할 때에는 템플릿 엔진으로써 사용이 가능합니다.클라이언트 템플릿 엔진 예: React의 View, Vue의 View서버 템플릿 엔진을 이용한 화면 생성은 서버에서 Java 코드로 문자열을 만든 뒤 이 문자열을 HTML로 변환하여 브라우저로 전달합니다. 반면 자바스크립트는 브라우저 위에서 작동합니다. 즉, 자바스크립트 코드가 실행되는 장..
·FRAMEWORK/Spring
들어가기 전에하기 포스팅은 스프링 부트와 AWS로 혼자 구현하는 웹 서비스(이동욱 저)를 공부하여 작성한 내용입니다.등록/수정/조회 API 만들기API를 만들기 위해서는 총 3개의 클래스가 필요합니다.Request 데이터를 받을 DTOAPI 요청을 받을 Controller트랜잭션, 도메인 기능 간의 순서를 보장하는 ServiceService에서 비즈니스 로직을 처리해야 한다고 생각할 수 있으나, Service는 트랜잭션, 도메인 간 순서 보장의 역할만 합니다.Spring 웹 계층Web Layer흔히 사용하는 컨트롤러(@Controller)와 JSP/Freemarker 등의 뷰 템플릿 영역입니다.이외에도 필터, 인터셉터, 컨트롤러 어드바이스 등 외부 요청과 응답에 대한 전반적인 영역입니다.Service L..
·FRAMEWORK/Spring
들어가기 전에하기 포스팅은 스프링 부트와 AWS로 혼자 구현하는 웹 서비스(이동욱 저)를 공부하여 작성한 내용입니다. SQL 매퍼를 이용해 데이터베이스의 쿼리를 작성하는 경우가 많습니다. 이 경우, 실제 개발하는 시간보다 SQL을 다루는 시간이 많았습니다. 이러한 문제점을 해결하기 위해 JPA라는 자바 표준 ORM 기술이 생겨났습니다. 이번 포스팅에서는 JPA를 프로젝트에 적용해보도록 하겠습니다.Mybatis는 ORM이 아닌, SQL Mapper입니다. ORM은 객체를 매핑하는 것이고, SQL Mapper는 쿼리를 매핑합니다.JPA현대의 웹 어플리케이션에서는 관계형 DB는 빠질 수 없는 요소입니다. 그로 인해 객체를 관계형 데이터베이스에서 관리하는 것이 중요합니다. 관계형 데이터베이스가 웹 서비스의 중심..
·FRAMEWORK/Spring
들어가기 전에하기 포스팅은 스프링 부트와 AWS로 혼자 구현하는 웹 서비스(이동욱 저)를 공부하여 작성한 내용입니다.단위 테스트의 장점단위 테스트는 개발 단계 초기에 문제를 발견하게 도와줍니다.단위 테스트는 개발자가 나중에 코드를 리팩토링하거나 라이브러리 업그레이드 등에서 기존 기능이 올바르게 작동하는지 확인할 수 있습니다(예: 회귀 테스트).기존에 만든 단위 테스트를 통해 기존 기능에 문제가 생겼는지 빠르게 확인이 가능합니다.단위 테스트는 기능에 대한 불확실성을 감소시킬 수 있습니다.단위 테스트는 시스템에 대한 실제 문서를 제공합니다. 즉, 단위 테스트 자체가 문서로 사용할 수 있습니다.테스트 코드 작성을 도와주는 프레임워크들 중 가장 대중적인 프레임워크는 xUnit입니다. 이는 개발환경(X)에 따라 ..
·FRAMEWORK/Spring
myBatis에서 ?(물음표) 문자 사용하기myBatis를 사용하는 프로젝트를 진행하다보면, 물음표를 문자로써 사용해야 하는데, 해당 부분에 parameter로 들고온 값이 들어가는 경우가 있습니다.  이럴 경우, CHR(63)을 '?' 대신 써주면 됩니다.'&' 역시 마찬가지로 문자로 사용하고 싶다면 CHR(38)을 대신 써주면 문자로 사용이 가능합니다. 사용 예시만약, '?'를 그냥 쿼리문에 넣게되면 하기와 같은 결과를 도출하게 됩니다.// 만약, 아래와 같이 사용하게 되면, parameterType으로 지정한 값들이 들어갈 수 있습니다// 필자의 경우는, '?'로 사용해도 쿼리는 제대로 돌아갔지만, jdbc.sqlonly에 의해 출력된 쿼리문에는 '?' 위치에 paramter로 지정한 값이 들어가있..
·FRAMEWORK/Spring
들어가기 전에하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다. 이번 포스팅에서는 Cloud Config에 대해 알아보돋록 하겠습니다.스프링 Cloud Config 사용하기앞서 application.profiles의 설정 파일을 분리하고 프로파일 기능을 사용해 각 환경에 적합한 설정 파일을 손쉽게 적용했습니다. 하지만, 프로파일 기능에는 문제점이 남아있습니다. 설정이 변경될 경우, 프로젝트의 모든 개발자들이 변경된 설정을 적용해야 합니다. Git과 같은 소스 관리 시스템에서 변경된 설정 파일을 받기만 하면 된다고 하더라도, 모든 개발자가 일일이 변경사항을 받는 것은 불편한 일입니다. 또한, 설정이 변경되면 다시 빌드, 배포를 해야 합니다. 즉, 어플리케이션을 재시작이 필요..
EARTH_ROOPRETELCHAM
'FRAMEWORK' 카테고리의 글 목록 (2 Page)