반응형 전체 글391 [Flutter] freezed와 toJson()의 관계: 왜 fromJson()이 필요할까? Flutter에서 freezed를 사용하면 불변 객체와 함께 JSON 직렬화도 쉽게 할 수 있습니다. 하지만 toJson()을 자동 생성하려면 반드시 fromJson()도 선언해야 한다는 점을 궁금해하는 분들이 많습니다. 이 글에서는 왜 fromJson()이 있어야 toJson()이 자동 생성되는지, 그리고 toJson()만 필요할 때 해결 방법은 무엇인지 자세히 알아보겠습니다. freezed에서 toJson()만 선언하면 발생하는 문제 보통 freezed를 사용할 때, JSON 변환을 위해 아래와 같이 toJson()을 직접 선언하는 경우가 있습니다.@freezedclass ToggleValuedCustomerEntity with _$ToggleValuedCustomerEntity { @JsonSe.. 2025. 2. 24. [springboot] jar파일과 json 파일을 각각 폴더에 위치하는 이유 프로젝트 하다보면 라이브러리와 외부연동을 위한 리소스 파일을 추가해야 하는 경우가 있는데, 예전에는 이 두개를 감각적(?)으로 분리해서 넣어놨다. 그런데 이번 프로젝트를 진행하면서 jar와 json을 각각 관리하는게 좋다고 생각했고 찾아봤더니 역시나 그게 더 좋은 방법이긴 하다. 그 과정을 여기에 정리하려 한다. 1) jar 파일외부연동중에 종종 결제회사 등에서 사용하는 고유 라이브러리(JAR)파일이 있어 추가해야 할 때가 있다. 그래서 이런것들은 maven이나 gradle 에다가 등록해서 쓰는데, 이떄 파일은 어디에다 둘까 고민이 되었다. 2) json 파일서버에서 푸시를 보내려면 파이어베이스에서 설정json 파일을 다운받고, 받은 파일의 정보를 이용해 푸시를 전송하는데, 그래서 json파일을 프로젝트.. 2025. 2. 21. 개발자 관점에서 코드 AI 중 Cursor AI를 선택한 이유 코드를 개발해주는 여러 AI 어시스턴트 툴이 있는데, 그중에 가장 핫한것이 Cursor AI 인거 같고 그 외 Windsurf라든가 Github copilot 등이 있을거 같다. Intellij 를 쓰는 사람이라면 무료로 제공되는 코딩 어시스턴트인 Codium 이 있다.https://codeium.com/ intellij 에서 플러그인을 설치해서 사용하면 되고, 회원가입하면 무제한으로 사용할 수 있다. 커서를 알았음에도 바로 쓰지 않은 이유내가 처음 Cursor(커서)를 알게 된 것은 작년 9월쯤이었던거 같은데, 그때 쓰지 않은 이유는 나는 대부분의 개발을 Intellij 를 통해서(React, Java 등) 하기 때문이다. 커서는 Intellij에서는 작동하지 않고, vscode를 커스텀해서 만든거.. 2025. 2. 18. [n8n] Slack 연동하기 n8n을 이용해 날씨정보를 슬랙에 메세지 보내는데, 슬랙연동을 하기위한 정보를 정리한다 Slack 에 App 을 생성해야 하고, App 을 채널에 추가하며, 그 정보를 n8n에 등록해야 한다. # Slack App 생성 및 권한 설정다음 URL 을 통해 앱만드는 곳으로 이동한다슬랙 앱 관리 화면으로 이동: https://api.slack.com/apps 접속하면 다음과 같은 정보를 볼 수 있다. 여기서 Create New App 을 클릭한다. 2가지 옵션이 나오는데, 여기서 From scratch 를 클릭한다 앱이름, 워크스페이스를 설정하고 'Create App'을 클릭해 생성한다. 생성하게 되면 상세화면으로 넘어간다. 이 화면에서 OAuth & Permission 을 클릭한다. 화면을 아래로 .. 2025. 2. 8. vscode 에서 nextjs + scss 에 Go to Definiton 안되는 문제 해결하기 styles.classname 을 컨트롤 클릭(go to Deifinition)하면 해당 클래스로 이동해야 하는데, Intellij 에서는 잘 되는게 vscode에서는 안된다. 예를들어 이런코드가 있다고 하자 import React from "react";import { useRouter } from "next/router";import { Desktop, Mobile } from "@/components/common/MediaQuery";import styles from "@/styles/input.module.scss";const HomeButton = () => { const router = useRouter(); return ( router.push("/")}.. 2025. 2. 7. [springboot, msa] gateway 서버에 Filter에서 던져진 Exception 핸들링하기 msa 에서 gateway 서버를 두면 여러 기능을 할 수 있는데, 그중 하나가 바로 인증하는 기능을 추가하는 것이다. Spring security 를 사용하면 자동으로 인증하는 부분이 들어가거나 조금 수정해서 등록할 수 있는데, 여기서는 Spring Security 를 사용하지 않는다. 그 이유는, 1. gateway 서버는 webflux로 움직이기 때문에 설정하는 부분이 다소 복잡하고2. spring security 를 인증기능만 넣기에는 무겁다고 느껴지기 떄문이다. 내 경우는 후자가 더 컸기 때문에 인증을 코드를 통해 직접 구현하는걸 하려는데, 그러다보니 WebFilter 를 상속하여 직접 구현하는 걸 선택했다. @Slf4j@Component@RequiredArgsConstructorpublic.. 2024. 12. 7. 이전 1 2 3 4 ··· 66 다음 반응형