본문 바로가기
728x90
반응형

전체 글297

[JWT] jwt란 무엇인가? JWT란 무엇인가?JWT는 JSON Web Token의 약자로, 두 시스템 간에 정보를 안전하게 전송하기 위해 사용되는 토큰 기반 인증 방식입니다. 예를 들어, 클라이언트와 서버 간에 인증 정보나 사용자 상태를 유지하고 싶을 때 JWT를 활용합니다.  JWT의 구조JWT는 세 부분으로 구성됩니다:Header (헤더): 토큰의 타입과 해싱 알고리즘 정보를 담고 있습니다. 보통 'alg' (알고리즘)와 'typ' (타입)이라는 두 가지 속성이 포함되며, 예를 들어, {"alg": "HS256", "typ": "JWT"} 형태입니다.Payload (페이로드): 주로 사용자 정보나 데이터(claims)를 포함하는 부분입니다. 여기에는 사용자 ID, 역할, 토큰 만료 시간 등의 정보가 담겨 있습니다.Signatu.. 2025. 2. 26.
[코딩테스트] HashMap getOrDefault() HashMap.getOrDefault() 메서드란?getOrDefault()는 Java의 HashMap에서 특정 키를 조회할 때, 키가 존재하지 않으면 기본값을 반환하는 메서드입니다.getOrDefault()의 기본 문법V getOrDefault(Object key, V defaultValue)key: 조회할 키defaultValue: 키가 존재하지 않을 경우 반환할 기본값반환값: key가 존재하면 해당 키의 값을 반환, 존재하지 않으면 defaultValue 반환getOrDefault() 사용 예제1️ 키가 존재하는 경우import java.util.HashMap;public class Main { public static void main(String[] args) { HashMap.. 2025. 2. 7.
[코딩테스트] Hash - 프로그래머스 포켓몬 문제 분석nums 배열에는 포켓몬의 종류 번호가 저장되어있음N 마리 중 절반인 N/2마리를 선택할 수 있고, 최대한 다양한 종류의 포켓몬을 가져야 한다.둘 중 선택할 수 있는 포켓몬의 최대 종류개수를 구하면됨,==> N마리중 절반인 값과 중복제거된 값을 비교해서 둘중 더 Min 값이 정답이된다 Math.min 사용import java.util.*;class Solution{ public int solution(int\[\] nums){ Set poketmons = new HashSet();for(int num : nums){ poketmons.add(num); } int maxSelectable = num.length/2; return Math.min(poketmons.size(.. 2025. 2. 6.
[flutter] 블로그 만들기 03 Json 타입보통 서버에서 문자열 형식 JSON 던져 줄 때 , 크게 사용하는 두가지 타입이 있다.Json Object 타입{ "status": "success", "users": \[ { "username": "ssar", "password": 1234 }, { "username": "cos", "password": 5678 } \] }Json Array 타입\[ { "username": "ssar", "password": 1234 }, { "username": "cos", "password": 5678 } \]플러터에서 파싱하는 형태JSON Object → Map 형태로 받아 바로 사용.JSON Array → List> 형태로 받아 바로 사용.DTO를 만들어서 활용가능, 또는 바로 모델 클래스로 변환.. 2025. 2. 3.
[flutter] 블로그 만들기 02 - 로그인 페이지 구성하기 기본 파일 (이미지)로그인 ui 환경 구현하기디자인 시안1. assets 허용하기assets: - assets/2. 폴더 구조3. Login pageimport 'package:flutter/material.dart';import 'widgets/login_body.dart';class LoginPage extends StatelessWidget { const LoginPage({super.key}); @override Widget build(BuildContext context) { return LoginBody(); }}4. login bodyimport 'package:class_f_story/_core/constants/size.dart';import 'package:class_f_.. 2025. 2. 3.
[flutter] 블로그 만들기01 - 프로젝트 기본설정 의존성cupertino_icons: ^1.0.8flutter_svg: ^2.0.6intl: ^0.18.1dio: ^5.2.0 # 서버와 통신하기 위해 필요한 라이브러리 입니다.flutter_riverpod: ^2.3.6 # 상태관리 Riverpod 라이브러리 입니다.logger: ^1.3.0 # 콘솔창에서 결과물을 쉽게 확인할 수 있도록 하는 Log 라이브러리입니다.flutter_secure_storage: ^8.0.0 # 어플리케이션 Secure Storage를 쉽게 사용할 수 있도록 도와주는 라이브러리입니다.pull_to_refresh: ^2.0.0linter#linter란? # 코드 스타일과 품질을 검사하여 코드에 있는 잠재적 오류 # 스타일 위반, 비효율적 패턴 등을 알려주는 도구입니다. l.. 2025. 1. 31.
[flutter 프로젝트]개발일지 03 오늘의 목표flutter 백과 연결하여 로그인 시도, 회원가입 user insert수행한 작업login dio 객체로 백과 통신하여 로그인하기회원가입화면에서 객체 만들어서 insert하기문제 및 해결 방법문제:api baseUrl이 제대로 인식되지 않아서 문제가되었다 .해결 방법:어떤 애뮬레이터를 사용하느냐에 따라서 다른 네트워크 주소가 필요하므로, 어떤 기기에 맞는 baseuril 을 맞추어 사용해야한다.성과 및 배운 점로그인이나 회원가입에 필요한 textEditingcontroller를 class에 담아서 사용하면 여러곳에서 불러서 사용할 수 있어서 상태관리하기 편하였다.하지만 로그인 페이지는 한 페이지에서 연결되어있으므로 최상위에서 컨트롤러를 하위로 전달해줘야 하지만, 회원가입 페이지는 여러 페이지.. 2025. 1. 28.
[flutter] 상태관리되는 ToDo List 만들어보기 Flutter 프로젝트: Riverpod과 ToDo 관리이 문서는 Riverpod과 Flutter를 활용한 상태관리 및 ToDo 리스트 구현에 대해 정리한 내용입니다. Tistory에 게시할 수 있도록 깔끔하게 정리하였습니다.1. Riverpod을 활용한 책 관리 시스템1-1. 책 관리 창고 생성NotifierProvider를 사용하여 책 리스트를 관리하는 상태 관리 시스템을 구현합니다.import 'package:flutter_riverpod/flutter_riverpod.dart';// 초기 데이터 선언String myBook = '홍길동전';List books = [];// Notifier 클래스 정의class MyBookStore extends Notifier> { @override List .. 2025. 1. 22.
[flutter 프로젝트] 개발일지 02 오늘의 목표MySetting부분 화면 구현수행한 작업Setting 부분mvvm 구조로 변경하기문제 및 해결 방법문제:Switch를 모양이 변경이 안됨?해결 방법:모양이 Cupertino의 Switch가 있고, Material의 Switch가 두종류 존재한다.조금더 다양한 커스텀을 하고싶다면 MateralSwitch를 사용하지만, 아이폰의 스위치 모양을 하고싶다면 Cupertino를 사용함성과 및 배운 점상태관리와 mvvm 모델을 구성하여 사용해봤다.일단 간단한걸로 userSetting에 관한것을 객체를 생성하고, 해당 부분의 view_model를 만들어 상태관리를 조정해보았다. Notification_toggleimport 'package:applus_market/theme.dart';import 'p.. 2025. 1. 22.
[flutter 프로젝트] 개발일지 01 - 화면구현(나의설정) 오늘의 목표레퍼런스를 통하여 필요한 부분 화면구현하기MyPage, 로그인 화면구현 하기수행한 작업기본적인 공통된 상수들을 따로 정의하기공통된 테마적용폴더 구조 생성하기문제 및 해결 방법문제:keyboard의 위치를 잡지 못해 왔다갔다 거림해결 방법:2025.01.19 - [Flutter] - [flutter] Error 키보드 origin_client_hide_soft_input reason hide_soft_input_by_insets_api[[flutter] Error 키보드 origin_client_hide_soft_input reason hide_soft_input_by_insets_api문제 상황텍스트필드를 눌렀을때 , 키보드가 왔다갔다 거리면서 제대로 위치를 잡지 못하는 오류가 지속적으로 생겼.. 2025. 1. 21.
728x90
반응형