개요 최상위 프로젝트 build.gralde을 통하여 하위 프로젝트들을 관리하려 함. 내용 아래 코드처럼 common api 적용하였으나 하위 모듈에서 라이브러리를 읽어오지 못함. rootProject.name = 'mlmall' include 'app-auth' buildscript { ext{ springBootVersion = '2.7.1' } repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") classpath "io.spring.gradle:dependency-management-plugin:1.0.11.RELEA..
개요 새로 만든 모듈에 spring security starter을 dependencies에 추가하려 하였으나 제대로 작동하지 않음. 내용 위와 같이 spring security starte 추가하였으나 아래와 같은 에러가 남 A problem occurred evaluating project ':app-auth'. > Could not find method compile() for arguments [org.springframework.boot:spring-boot-starter-security] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler. 해결 // gradle Task 의 집..
어떤 유저가 회원가입을 하거나 수정을 했을 때 메일을 발송해야하는 기능을 구현해야했다. @TransactionalEventListener를 이용하여 이 것을 해결했는데 기본 코드는 작년 프로젝트 코드를 참고 하였고, 메일을 발송하는 기능 자체는 회사 내부 다른팀의 api(외부 api)를 이용하였다. 흐름 자체는 외부 api를 통해 메일 내용을 등록해놓는 것이었고, 내부 코드에서는 CRUD가 일어났을 때 EventListener가 실행될 수 있도록 되어있었는데, 이 부분에서 작은 문제가 생겼다. @Override public UserDto createUser(LoggedInUser loggedInUser, RequestUserDto request) { UserEntity originUser = userRe..
창천향로님의 블로그를 보며 내가 이해한 것을 기반으로 aop를 그려보았다. 실제로는 아직 구현해본 적이 없으므로 미리 작성된 코드를 봤고, 학원 동기와의 토론을 통해 이해한 것이다. Aop? 과거 MSA 기반으로 모듈 설계를 한 적이 있다. 큰 기능을 중점으로 모듈을 나눴는데 예를 들면 한 api에서 캘린더 기능과 TodoList의 기능이 있다고 한다면 캘린더, todoList 그리고 중앙의 연결고리를 해줄 common까지 3개의 모듈로 나뉘게 된다. 즉 하나의 인프라를 기반을 둔 api의 기능을 나누는 것인데 aop는 비즈니스 로직을 기반으로 둔 기능을 나누는 것이다. 말하자면 로그인 기능을 매번 모든 Controller에서 로직으로 처리해야 할 때 이 로그인 기능을 aop로 만들어 분리하는 것으로 코..
월요일부터 작업을 시작한 ims Project 기능 중 회원가입 기능 구현을 완료했다. 작은 기능이었고, 앞으로의 발전과 나의 도전 정신을 위하여 DTO와 Test를 적용했는데, 당장 atdd를 바로 구현하려니 시간이 너무 오래 걸렸고, 가장 중요한 것은 어떻게 접근해야 할지 감을 잡을 수가 없었다. 그래서 일단 익숙해지겠다는 생각으로 마스터의 코드와 구글의 검색을 통해 단위테스트라고 보는 게 사실상 맞는 test code를 구현하고, 통과하도록 진행했다. 이제 평소처럼 어떤 식으로 작업했는지 정리해보자. graphQl project와 큰 차이는 없는 userClass이다. @NoArgsConstructor은 파라미터가 없는 기본 생성자를 생성해주는 어노테이션이고, 혹시 특정 예외가 생겨 추가적인 생성자..
graphQL project를 진행하다가 resolver에서 막혀 도움 없이는 해결할 수 없는 상황까지 왔다. 시간은 흘러가고 코드를 봐도 시뻘건 에러만 보이니 이러다 5월이 될 것 같은 불길함이 올라와 취업 전에 완성하려고 마음먹었던 두 개의 project 중 하나인 이슈관리시스템을 만들기로 했다. Spring boot 2.1.4, MySQL 기반의 rest API로 만들 것이고, 완성 후 graphQL과 다른 점을 느끼고 경험하는 것이 최종 목표다. 평소처럼 spring Initialize에서 필요한 설정을 해준 프로젝트를 열어 추가로 필요한 dependencies와 yml을 설정하였다. 이미 graphQL project에서 경험해봤기 때문에 빠르게 설정 후 run을 했더니 쉽게 넘어가는 법 없다고 ..
왜 열심히 작업 순서 설계까지 다 하고 갑자기 로그인을 구현하나 싶을 거다. 어제 열심히 쉬었으니 오늘 카페에서 열심히 코딩하며 html 파일을 생성하는데 뭔가 느낌이 이상했다. "privacy는 사용하는 user의 기본 데이터를 가져오니까…. 그럼…. 회원 가입한 사용자가 필요하니……." 한마디로 정리하자면 작업 순서를 잘못 짰다. 그래서 작업하던 privacy를 잠시 중단하고, login 기능을 구현하기 시작했다. 일단 privacy class에 있는 몇몇 부분이 겹쳐서 그 부분은 나중에 수정하기로 하고 회원가입을 할 때 필요한 데이터를 받을 class를 생성했다. Repository를 생성하고, User의 이름으로 데이터를 호출할 수 있도록 하였다. Controller에서 바로 Repository를..
- Total
- Today
- Yesterday
- Gradle
- graphQL
- 스터디 회고
- 모듈
- RequestHandler
- springboot
- 멀티모듈
- 개발
- 회고
- body
- Spring
- Java
- Request Handler
- 개발일지
- JAR
- web
- HTTP
- 프로그래머스
- JavaScript
- homebrew
- header
- Spring Boot
- 한 입 크기로 잘라먹는 리액트
- spring-boot
- 일지
- mapping
- 인텔리J
- 자바스크립트
- @Autowired
- MySQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |