개발자 과정(154)
-
TestCode에 yml 함부로 넣지 말자.
잘돌아가던 TestCode가 갑자기 안돌아 가기 시작했다.난 나의 프로젝트에게 배신감을 느꼈다. 하지만 느낀건 둘째 치고 일단 해결은 해야했다.분명 했는데 안한 취급받는건 너무 억울하니까~ 처음엔 커밋을 롤백했다. TestCode 브랜치를 따서 풀리퀘를 했었기 때문에, 작동되던 시점으로 롤백하는 것은 추적이 어렵지 않았었다.하지만 그래도 안되었다. 그러다 문득 Test패키지 안에 resorces가 보였다. 내 1년간의 실무경력이 이곳이 불결한 곳임을 말하고 있었다.그래서 yml폴더를 열어 어떤게 문제일지를 예측해 보았다.datasource: url: jdbc:h2:mem:test;MODE=MySQL; driver-class-name: org.h2.Driverin memory인 휘발성 DB.....
2024.06.28 -
Kotlin으로 Spring Scheduler와 Spring Batch을 엮어보자!
Kotlin 문법에 맞춰 Spring Scheduler와 Spring Batch를 엮어보려고 했으나,마음처럼 잘 되지 않았다. 그렇게 붙들고 있기를 며칠... 성공하고 말았다 이 말이야!!! 우선, 구현하고자 하는 기능은 SoftDelete기능으로, 일정 시간이 되면 delete=true를 찾아 삭제하는 쿼리를 날리는 기능이다. JobConfig@Configurationclass SettlementJobConfig ( private val transactionManager: PlatformTransactionManager,){ @Bean fun settlementJob(jobRepository: JobRepository,createStep:Step): Job { retur..
2024.06.27 -
페이지블에 정렬 추가하기
문제페이지블을 적용하는데, 자꾸 정렬기준이 ASC로 들어오는 문제가 있었다. 이 문제를 해결하는데 완벽한 방법은 아니지만, 나름의 차선책을 찾았기에 기록한다. 해결방법정렬기준을 추가적으로 받아와 이를 페이지블과 엮어낸다. 코드@GetMappingfun getTodoList( @PageableDefault(size = 15) pageable: Pageable, @RequestParam(required = false,name = "title") title: String?, @RequestParam(required = false, name = "direction", defaultValue = "DESC") direction: Sort.Direction,) : ResponseEntity> { ..
2024.06.21 -
UBIS 팀 프로젝트 기획 / 개발 기록
https://www.notion.so/teamsparta/3-a22bf4cefb5b4e6087e59e9dfe32330f 3조 | Notion❤ 팀 소개teamsparta.notion.site 다시 돌아온 팀프로젝트의 시간을 잘 마쳤다. 이에 대한 기획과 개발의 과정을 담은 링크를 올린다.
2024.06.18 -
UBIS 팀 프로젝트 회고
KPT 팀 프로젝트 회고KeepCode with me를 사용해 문제점을 바로 수정하면서 서로 문제점을 설명하고 이해하는 시간을 줄인 점문제가 생겼을 때 빠르게 공유하면서 문제 해결 시간을 줄여나간 점기능팀, 보안팀으로 나눠 맡은 부분에 더 집중할 수 있던 것모두가 의견을 내고, 그 의견을 조율해 나아가는 과정이 정말 협업이라 느껴졌었다.Problem기초적인 CRUD에 리소스를 투자하느라, 더욱 많은 도전 과제들을 시도해보지 못했다.구현에 시간을 많이 투자해서 코드 리뷰를 할 시간이 없어서 서로의 코드를 이해하는데 어려움이 있었던 점초기 계획에서 어떤 걸 어떻게 할지 확실하게 정하지 못한 것Try더 다양한 기능 구현을 위해 어떤 노력이 필요할지 고민해 보기retools 활용해 보기모르는 부분들을 더 알아볼..
2024.06.18 -
Redis란 무엇일까?
차근차근 기본기를 익혀가니 Redis란 단어가 수면위로 서서히 떠오르고 있다.너와 나는 피할 수 없는 운명이구나. 그래. 누군지나 한 번 보자! 하고 알아보았다. Redis란?1. Key: Value구조의 데이터를 저장하기 위한 비관계형 데이터 베이스 이다.- 단, 쿼리가 아닌 커맨드 기반으로 작동한다.2. Disk가 아닌 in Memory에 저장한다.- 그렇다면 속도는 빠르지만, 데이터는 휘발성을 가질 것이다.3. Single Thread로 동작한다.- 요청받은 작업의 순서가 보장되겠구나!! 그럼 변경된 데이터의 신뢰성이 생기겠네! Redis가 지원하는 자료구조해당 자료구조들의 정체정도는 파악하고, 실제 구현은 아직 하진 않을 것이다.커맨드도 필요할 때 찾아 쓰면 되기에 간략하게만 기재한다. 1. St..
2024.06.17