Coding 공부/IntelliJ43 [Web] JSESSIONID 쿠키와 세션 🍪 JSESSIONID 쿠키와 세션: 웹 로그인의 숨은 비밀 🕵️♀️웹사이트에 로그인하면 어떻게 로그인 상태가 유지되는 걸까요? 그 비밀은 바로 JSESSIONID 쿠키와 세션에 숨겨져 있습니다! 오늘은 이 둘의 관계와 로그아웃 시 세션이 어떻게 처리되는지 알아보겠습니다. 1. JSESSIONID 쿠키: 세션의 ID 카드 💳세션이란? 웹 서버는 사용자마다 **세션(Session)**이라는 공간을 만들어 로그인 정보, 장바구니 등의 데이터를 저장합니다. 하지만 HTTP는 상태를 저장하지 않는(Stateless) 프로토콜이라 매 요청마다 사용자를 구분할 방법이 필요합니다.JSESSIONID 쿠키의 등장: 이때 웹 서버는 JSESSIONID라는 이름의 쿠키를 사용자에게 발급합니다. 이 쿠키에는 세션을 .. Coding 공부/IntelliJ 2024. 6. 23. [IntelliJ] Local History IntelliJ에서 포토샵 히스토리처럼 이전 작업으로 돌아가기 ⏪✨코딩하다가 실수로 중요한 코드를 날려버렸거나, 갑자기 이전 버전으로 돌아가고 싶을 때 있으시죠? 😱 IntelliJ에도 포토샵의 히스토리 기능처럼 이전 작업 내역을 확인하고 특정 시점으로 되돌릴 수 있는 기능이 있습니다! 😎바로 Local History 기능! 🕰️Local History는 IntelliJ가 자동으로 파일 변경 내역을 저장해두는 기능입니다. 덕분에 실수로 삭제한 코드를 복구하거나, 여러 버전을 비교하면서 원하는 시점으로 돌아갈 수 있습니다.Local History 사용 방법:Local History 열기:편집 중인 파일에서 마우스 오른쪽 버튼을 클릭하고 "Local History" -> "Show History"를 선.. Coding 공부/IntelliJ 2024. 6. 20. [SpringBoot] 스프링부트에서 fastAPI Docs를 사용하는 방법 Spring Boot API 문서 자동 생성? 뚝딱! 🪄 Springdoc-openapi로 FastAPI Docs처럼 편하게! 😎 FastAPI의 Swagger UI처럼 멋진 API 문서를 Spring Boot에서도 자동으로 만들고 싶다고요? 🤔 그럼 Springdoc-openapi가 정답! 🎉 복잡한 설정 없이 몇 줄만 추가하면 짜잔~ ✨ API 문서가 눈앞에 펼쳐집니다. 게다가 API 테스트까지 바로 할 수 있다는 사실! Springdoc-openapi? 넌 누구냐! 🤔Springdoc-openapi는 Spring Boot 프로젝트에서 OpenAPI 3 명세를 기반으로 API 문서를 자동으로 생성해주는 라이브러리입니다.Swagger UI 기본 제공: 친숙한 Swagger UI를 통해 API .. Coding 공부/IntelliJ 2024. 6. 19. [SpringBoot] 시큐리티 설정, 로그인 성공 처리 방법 @Configurationpublic class SecurityConfig { @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http .authorizeRequests(authorizeRequests -> authorizeRequests.anyRequest().authenticated() ) .formLogin(formLogin -> formLogin.successHandler(loginSuccessHand.. Coding 공부/IntelliJ 2024. 6. 18. [SpringBoot] @ControllerAdvice, @ModelAttribute("member")로 세션 속 멤버 정보를 전달하기 스프링 MVC 꿀팁🍯: @ControllerAdvice와 @ModelAttribute("member")로 세션 속 멤버 정보를 모든 뷰에 쏙! 넣어주기 😎혹시 매번 컨트롤러에서 세션에 저장된 멤버 정보를 가져와 모델에 추가하는 작업이 귀찮다고 느끼신 적 없나요? 그렇다면 오늘 알려드릴 꿀팁으로 개발 생산성을 높여보세요! 🚀 @ControllerAdvice란 무엇인가요? 🤔컨트롤러를 위한 조언자: 스프링 MVC에서 여러 컨트롤러에 공통적인 처리 로직을 적용할 때 사용하는 강력한 도구입니다.전역적인 문제 해결사: 예외 처리, 모델 속성 추가 등 다양한 작업을 중앙에서 관리하여 코드 중복을 줄이고 유지보수를 쉽게 만들어 줍니다.@ModelAttribute("member")의 마법 ✨모든 뷰에 멤버 정보.. Coding 공부/IntelliJ 2024. 6. 17. [SpringBoot] Entity와 DTO를 ModelMapper로 쉽게 변환하기 영양 진단 결과를 DTO로 깔끔하게 변환! ✨ resultMapper 활용법 🧐개발하다 보면 영양 진단 결과 데이터를 이리저리 가공해야 할 때가 있죠? 🤔 이때, resultMapper가 등장하면 삶의 질이 수직 상승합니다! 🚀resultMapper는 왜 쓸까요? 🤓데이터 주고받기 편하게: 복잡한 NutritionDiagnosisResult 객체를 좀 더 가볍고 간편한 NutritionDiagnosisResultDTO 형태로 변환해 줍니다. 마치 택배 상자를 포장하는 것과 같죠! 🎁코드 재사용성 UP!: 매번 변환 로직을 작성할 필요 없이, resultMapper를 여러 곳에서 재사용하여 개발 시간을 단축할 수 있습니다. ⏰유지 보수 걱정 끝!: 변환 로직이 변경되더라도 resultMapper만.. Coding 공부/IntelliJ 2024. 6. 17. [SpringBoot_JPA] 엔티티 어노테이션 @OneToMany, @Builder.Default, @BatchSize JPA 엔티티에서 이미지 관리를 위한 어노테이션 3종 세트 뽀개기 💥JPA(Java Persistence API)를 사용하여 데이터베이스와 객체를 매핑할 때, 관계 설정은 빼놓을 수 없는 중요한 부분입니다. 특히 이미지처럼 여러 개의 파일을 하나의 게시글과 연결해야 할 때는 @OneToMany, @Builder.Default, @BatchSize 어노테이션 조합이 강력한 도구가 될 수 있습니다. 😎1. @OneToMany: 일대다 관계 매핑의 핵심 🗝️역할: 하나의 게시글 엔티티(Board)가 여러 개의 이미지 엔티티(BoardImage)를 가질 수 있는 일대다 관계를 설정합니다.mappedBy 속성: 관계의 주인이 어떤 엔티티인지 명시합니다. 여기서는 BoardImage 엔티티의 board 필드가.. Coding 공부/IntelliJ 2024. 6. 13. [SpringBoot_MariaDB] 파일 업로드 코드 추가 1. 추가한 디렉토리 CotrollerUpDownControllerDTOUploadResultDTOUploadFileDTODomainBoardImage 2. 추가한 설정 application.properties 파일spring.servlet.multipart.enabled=truespring.servlet.multipart.location=C:\\uploadspring.servlet.multipart.max-file-size=10MBspring.servlet.multipart.max-request-size=30MBorg.zerock.upload.path=C:\\upload 업로드관련 설정 추가 build.gradle dependencies 추가implementation 'net.coobird:thumb.. Coding 공부/IntelliJ 2024. 6. 11. [IntelliJ] 스프링부트 파일 업로트 설정, Multipart 안녕하세요, 개발자 여러분! 오늘은 스프링 부트 프로젝트에서 파일 업로드 기능을 구현하기 위한 핵심 설정에 대해 알아보겠습니다. 특히, application.properties 또는 application.yml 파일에 작성하는 아래 설정 코드를 자세히 분석하고, 실제 업로드 경로를 설정하는 방법까지 상세히 설명드리겠습니다.spring.servlet.multipart.enabled=truespring.servlet.multipart.location=C:\\uploadspring.servlet.multipart.max-file-size=10MBspring.servlet.multipart.max-request-size=30MBorg.zerock.upload.path=C:\\upload1. spring.serv.. Coding 공부/IntelliJ 2024. 6. 11. [IntelliJ_SpringBoot] 스프링 부트에서 세션을 사용한 로그인 정보 저장 (10단계 + 예제 코드) 1. 의존성 추가: build.gradle (Gradle) 또는 pom.xml (Maven) 파일에 Spring Session 의존성을 추가합니다.Gradle// build.gradleimplementation 'org.springframework.boot:spring-boot-starter-web'implementation 'org.springframework.session:spring-session-core' 2. 세션 설정 활성화: application.properties 또는 application.yml 파일에 세션 설정을 추가합니다. # application.propertiesserver.servlet.session.timeout=3600 # 세션 유효 시간 (초) 3. 로그인 컨트롤러 생성:.. Coding 공부/IntelliJ 2024. 5. 31. [IntelliJ_SpringBoot] consumes, HTML <form>태그 기본 속성 1. Spring Boot Controller : consumesconsumes = MediaType.APPLICATION_JSON_VALUE는 Spring MVC의 @PostMapping 어노테이션에서 사용되는 속성으로, 해당 컨트롤러 메서드가 JSON 형식의 요청만 처리하도록 지정하는 역할을 합니다.동작 방식:요청 Content-Type 검사: 클라이언트가 서버에 요청을 보낼 때, 요청 헤더에 Content-Type 필드를 포함하여 데이터의 형식을 명시합니다. 이 속성을 사용하면, Content-Type이 application/json인 요청만 해당 메서드에서 처리하고, 다른 형식의 요청은 거부합니다.415 Unsupported Media Type 에러: 만약 Content-Type이 applicat.. Coding 공부/IntelliJ 2024. 5. 31. [IntelliJ_Springboot] Springboot 자원 자동 서빙, 리다이렉트 vs 뷰 반환 방식 1. Springboot 자원 불러오기Spring Boot는 src/main/resources/static 디렉토리에 있는 정적 파일을 자동으로 서빙합니다.src/└── main/ └── resources/ ├── static/ │ └── css/ │ └── sign-in.css └── templates/ └── board/ └── index.html Welcome to the Board Index Page! 정적 파일 위치: 정적 파일은 src/main/resources/static 디렉토리에 배치합니다.템플릿 파일 링크: HTML 템플릿 파일에서 /css/sign-in.css"> .. Coding 공부/IntelliJ 2024. 5. 29. 이전 1 2 3 4 다음 728x90 반응형