본문 바로가기

전체 글207

[Spring Boot3]로그인과 쿠키, 세션, 인터셉터 로그인(Login)로그인은 웹 클라이언트를 통해 사용자와 애플리케이션의 연결을 시작하는 과정입니다. 이를 통해 사용자는 최초 연결 시 ID와 비밀번호를 입력하여 애플리케이션과 연결되고, 이후에는 "쿠키"와 "세션"을 사용하여 계속 연결 상태를 유지합니다.최초 연결 : "사용자 ID"와 "비밀번호"로 애플리케이션과 연결계속 연결 : "쿠키"와세션"을 사용하여 매번 로그인하지 않고도 연결 상태 유지인터셉터(Interceptor)인터셉터는 스프링 MVC에서 "DispatcherServlet"과 "컨트롤러" 사이에서 동작하는 모듈입니다. 서블릿 필터와는 다르게 "인터셉터"는 요청과 응답을 가로채는 역할을 하며, 애플리케이션의 목적에 맞게 사용해야 합니다.역할 : 요청/응답을 가로채어 로깅, 인증, 권한 처리 등.. 2024. 11. 24.
[Spring5] 커맨드 객체 검증(Validate(), @Valid, Bean Validation) 웹 애플리케이션에서 사용자 입력을 받을 때, 올바른 데이터인지 확인하는 "검증(validation)"은 매우 중요합니다. Spring에서는 커맨드 객체(command object)를 활용해 검증 로직을 쉽게 작성할 수 있습니다. 1. 컨트롤러에서 커맨드 객체 검증 (Validate() 메서드 사용)커맨드 객체란 사용자가 폼에 입력한 데이터를 매핑하는 객체입니다. Spring에서는 Validator 인터페이스를 사용해 검증 로직을 명시적으로 작성할 수 있습니다.주요 메서드rejectValue(field, errorCode): 특정 필드에 오류 추가.reject(errorCode): 객체 전체에 오류 추가.예시 코드// 1. Validator 구현public class UserValidator impleme.. 2024. 11. 24.
[클라우드]AWS와 .NET 개발을 위한 Visual Studio 환경 준비 1. Visual Studio 설치 관리자 실행Visual Studio Installer를 실행합니다.Windows 검색창에서 "Visual Studio Installer"를 입력하거나 시작 메뉴에서 찾을 수 있습니다.설치 관리자가 없다면, Visual Studio 다운로드 페이지에서 설치 관리자를 다운로드하세요.https://visualstudio.microsoft.com/ko/downloads/ Visual Studio Tools 다운로드 - Windows, Mac, Linux용 무료 설치Visual Studio IDE 또는 VS Code를 무료로 다운로드하세요. Windows 또는 Mac에서 Visual Studio Professional 또는 Enterprise Edition을 사용해 보세요.vi.. 2024. 11. 20.
[Spring & MVC] MVC의 이해 MVC는 Model-View-Controller의 약자로, 소프트웨어 개발에서 사용되는 아키텍처 패턴입니다. 이 패턴은 애플리케이션을 세 가지 주요 구성 요소로 나누어, 각기 다른 역할을 담당하게 하여 코드의 유지보수성과 재사용성을 높입니다. 스프링에서는 이 패턴을 매우 효과적으로 활용하여 웹 애플리케이션의 구조를 명확하게 분리합니다.1. Model (모델)정의: 애플리케이션의 데이터나 비즈니스 로직을 담당하는 부분입니다. 데이터베이스와 상호작용하거나, 데이터를 처리하는 등의 로직을 포함합니다.역할: 사용자가 요청한 데이터를 관리하고, 이 데이터를 가공하여 반환합니다.사용처: DAO, Repository, Service 계층이 주로 이 역할을 수행하며, 데이터베이스의 데이터를 CRUD(생성, 조회, 업데.. 2024. 11. 18.
[Spring5]HTTP 상태 500 – UnsatisfiedDependencyException (메시지 서블릿 [dispatcher]을(를) 위한 Servlet.init() 호출이 예외를 발생) Spring에서 트랜잭션을 적용한 비밀번호 변경 서비스 오류 해결 사례 예외 발생 메시지  org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'controllerConfig': Unsatisfied dependency expressed through field 'changePasswordService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'changePwdSvc': Unsatisfied dependency expr.. 2024. 11. 18.
[MYSQL] 데이터베이스 생성 및 테이블 생성 2가지 방법 MySQL Workbench를 실행하면 메인 화면에서 이전에 저장된 연결 목록이 표시됩니다.1. 아래 사진을 보면 "+ 아이콘" (왼쪽 상단의 MySQL Connections 아래에 있음)을 클릭하여 새로운 연결을 생성합니다.2. 새 연결 설정Connection Name : 연결에 대한 고유한 이름을 입력합니다 (예 : sp5db).Connection Method : 기본 설정은 Standard (TCP/IP)로 그대로 둡니다.Hostname : 원격 서버를 사용할 경우 서버의 IP 주소를 입력합니다.Port : 기본 포트 또는 사용자 지정 포트를 입력하세요.Username : MySQL 사용자 이름을 입력합니다 (예 : sp5, 보통은 root).Password : Store in Vault... 버튼.. 2024. 11. 18.
[MYSQL] MYSQL Workbench 설치 1. 아래 링크를 통해 파일을 다운.https://dev.mysql.com/downloads/workbench/ MySQL :: Download MySQL Workbench dev.mysql.com2. 실행을 해서 밑에 사진까지 뜨면 성공. 2024. 11. 18.
[Java]내가 생각하는 중요한 자바 용어 정리2 소프트웨어 소프트웨어는 컴퓨터 시스템에서 특정 작업을 수행하기 위해 작성된 프로그램, 데이터, 프로시저의 집합입니다. 운영체제(OS), 애플리케이션 소프트웨어, 데이터베이스 관리 시스템(DBMS) 등 다양한 유형이 있습니다. 소프트웨어는 사용자 요구에 따라 하드웨어를 제어하고, 프로세스를 자동화하여 작업을 효율적으로 수행합니다. 코딩 코딩은 프로그래밍 언어를 사용하여 컴퓨터가 실행할 명령어와 논리를 작성하는 과정입니다. 코딩은 다양한 언어(C, Python, Java 등)로 이루어지며, 논리적 사고와 문제 해결 능력을 요구합니다. 하드웨어 하드웨어는 컴퓨터 시스템을 구성하는 모든 물리적 장치와 부품을 의미합니다. CPU, 메모리, 하드 드라이브, 마더보드, 키보드, 모니터 등과 같은 요소들이 이에 해당됩.. 2024. 10. 29.
[Spring5]커맨드 객체, 요청 처리 메서드, 검증(Validation) 1. 커맨드 객체 (Command Object)란?커맨드 객체는 웹 폼에서 입력된 데이터를 담는 그릇 역할을 합니다. 사용자가 웹 페이지의 폼에 데이터를 입력하고 제출하면, 해당 데이터는 서버로 전송되어 커맨드 객체에 자동으로 매핑됩니다. 예시: 회원 가입 폼 데이터를 받는 커맨드 객체public class UserForm { @NotEmpty(message = "이름은 필수 입력 항목입니다.") private String name; @Email(message = "유효한 이메일 주소를 입력해주세요.") private String email; @Size(min = 6, message = "비밀번호는 최소 6자 이상이어야 합니다.") private String passwor.. 2024. 10. 23.
[Android(Flutter)] Dart의 상태 관리 기술 Flutter에서 상태 관리는 UI와 데이터의 일관성을 유지하는 데 중요한 요소입니다. 기본적인 상태 관리는 "StatefulWidget"과 "setState() 메서드"를 통해 쉽게 구현할 수 있으며, 앱의 크기가 커지면 "Provider", "Riverpod"와 같은 더 구조적인 상태 관리 도구를 사용할 수 있습니다. 1. 상태 관리란 무엇인가?Flutter 애플리케이션에서 상태(state)는 UI에 영향을 주는 모든 데이터를 의미합니다. 사용자가 버튼을 누르거나, 텍스트 필드를 입력할 때, 이 변화하는 데이터가 UI에 반영되어야 하는데, 이때 상태 관리가 필요합니다. 2. StatefulWidget과 상태 관리Flutter에서 "StatefulWidget"은 상태가 변할 수 있는 위젯입니다. 상태가.. 2024. 10. 9.
[생산관리]생산 시스템, 소품종 대량 생산 vs. 다품종 소량 생산 제조업은 빠르게 변화하는 시장 요구에 따라 다양한 방식으로 발전해왔습니다. 기업들은 소비자의 요구에 맞춰 소품종 대량 생산과 다품종 소량 생산 중에서 적절한 방식을 선택합니다. 소품종 대량 생산 (소품종다량)이 시스템은 제한된 종류의 제품을 대량으로 생산하는 방식입니다. 자동차 제조업이나 전자제품 산업과 같이 일관성과 대량 생산이 중요한 산업에 적합한 방식입니다.3S표준화(Standardization) : 작업 절차와 방법을 통일하여 효율성을 높임.단순화(Simplification) : 복잡한 작업을 줄이고 간소화.전문화(Specialization) : 특정 작업을 전문화하여 생산성 향상.5S정리(SEIRI) : 필요 없는 것을 구분하여 제거.정돈(SEITON) : 필요한 물건을 정해진 자리에 정리.청소.. 2024. 10. 7.
[SQLD]데이터 모델의 이해(핵심) 데이터 모델링이란? 정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법.현실 세계의 데이터를 약속된 표기법으로 표현하는 과정.DB 구축을 위한 분석 및 설계의 과정.모델링의 특징? 추상화 : 일정한 형식에 맞추어 표현.단순화 : 제한된 표기법, 언어로 표현해서 쉽게 이해할 수있도록 표현.명확화 : 쉽게 이해할 수 있도록 정확하게 현상을 기술.데이터 모델링이 필요한 이유 업무 정보를 일정한 표기법으로 표현.분석된 모델로 DB 생성 및 개발.업무 흐름을 설명.데이터 모델링의 유의점 중복 : 여러 장소에 같은 정보를 저장 안됨. (유일성)비유연성 : 데이터 정의를 데이터 프로세스와 분리. (유연성)비일관성 : 데이터간 상호 연관관계는 일관, 명확. (일관성)데이터 모델링 3단계 개념적 : 추상화물리적 :.. 2024. 10. 1.