분류 전체보기(255)
-
[Cinemagram] 회원가입 기본 구현 - (2)
Security세팅dependencies 추가 security로그 확인용 log4j2 → 사용시 클래스 상단에 @Slf4j 붙임plugins { id 'org.springframework.boot' version '2.7.5' id 'io.spring.dependency-management' version '1.0.15.RELEASE' id 'java'}group = 'com'version = '0.0.1-SNAPSHOT'sourceCompatibility = '1.8'configurations { compileOnly { extendsFrom annotationProcessor } all { exclude group: 'ch.qos.logback', module: 'logback-classic' ..
2022.11.13 -
[Cinemagram] 프로젝트 생성, Thymeleaf 적용, 스프링부트 Controller 동작방식 - (1)
지금까지 조각조각 공부했던 개념들을 어떻게 하면 퍼즐처럼 잘 모을 수 있을까 고민을 하다 토이 프로젝트를 시작하게 되었습니다. 평소 영화를 좋아해서 영화 관련 포스팅을 모아 볼 수 있는 웹을 만들자!라는 마음에 프로젝트명을 Cinemagram으로 정했습니다. 기능 구현 부분은 스스로 구현하다 막히는 부분은 여러 블로그나 영상을 참고해서 만들었으며 디자인 요소는 다른 분께서 만들어 놓으신 부분을 가져왔습니다. (저도 디자인에 소질이 있고 싶습니다...)기존 jsp코드를 thymeleaf로 바꾸면서 이론으로만 공부했던 문법을 실제로 적용해 볼 수 있는 시간이었습니다.생각보다 이 부분에서 시간이 제일 많이 소요되어서 힘들었지만 전 괜찮습니다... 포스팅에는 코드 뿐만 아니라 시행착오를 기록할 예정이며 단..
2022.11.10 -
[프로그래밍 패러다임] 함수형 프로그래밍
프로그래밍 패러다임 절차지향 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍은 프로그래밍 패러다임에 속하며 프로그래머가 코드를 어떻게 작성할지 결정하는 역할을 합니다. 프로그래밍 패러다임을 배우는 것은 지금과는 다른 방식으로 사고하는 방법을 배우는 것과 같다고 생각합니다. 열린 사고를 바탕으로 프로그래밍을 하면 유연한 문제 해결과 더 나은 코드를 작성할 수 있을 것입니다. 함수형 프로그래밍 (Functional Programming) 등장 배경 이전까지 명령형 프로그래밍을 기반으로 개발을 했을 때 부수효과가 나타났습니다. 여기서 부수효과란 어떤 함수의 동작에 의해 프로그램 내 특정 상태가 변경되는 상황을 말하는 것인데요. 이는 외부의 데이터를 참조해서 함수를 만들거나 원본 데이터를 그대로 가지고 와서..
2022.11.08 -
HTTP 헤더 (HTTP Body, 표현, 협상, 쿠키)
HTTP Body message body - RFC7230 메시지 본문(message body)을 통해 표현 데이터 전달 메시지 본문 = 페이로드(payload) 표현은 요청이나 응답에서 전달할 실제 데이터 표현 헤더는 표현 데이터를 해석할 수 있는 정보 제공 데이터 유형(html, json), 데이터 길이, 압축 정보 등등 전송, 응답 둘 다 사용 표현(Representation) 어떤 리소스가 있을 때 이게 html로 되어 있을 수도 있고 Json데이터 형식으로 되어 있을 수 있습니다. 여기에 표현이라는 용어를 접목해보자면, '나는 이 리소스를 html 표현으로 전달할 거야 / 저 리소스는 Json 표현으로 전달할거야' 라고 말할 수 있습니다. Content-Type: 표현 데이터의 형식 Conten..
2022.11.08 -
@RequestParam과 @PathVariable 차이
이전 포스팅에 웹 계층 개발 부분을 정리하면서 '@RequestParam과 @PathVariable 차이'를 중간에 삽입해서 적었던 기억이 있습니다. 하지만 토이 프로젝트를 할 때나 다른 사람들의 코드를 볼 때 자주 헷갈리는 개념이므로 따로 빼서 포스팅하게 되었습니다. Spring에서 @RequestParam과 @PathVariable차이 Controller 단에서 위 두 어노테이션은 uri를 통해 전달된 값을 파라미터로 받아오는 역할을 합니다. 쓰임과 차이점에 중점을 두면서 정리해보겠습니다. http://localhost:8000/board?page=1&listSize=20 ← @RequestParam방식 http://localhost:8000/board/1 ← @PathVariable방식 @Reque..
2022.11.07 -
[토이프로젝트] Mysql Workbench에서 Database 생성 및 연결하기
기본적이지만 매번 까먹어서 포스팅하기로 결정했습니다. 저의 경우 Connection Name을 프로젝트명과 일치시켰습니다. 데이터베이스 아이콘을 클릭하여 들어갑니다. Name에 해당 프로젝트명을 쓰고 Apply를 클릭합니다. use 프로젝트명; 을 통해 잘 들어갔는지 확인하고 좌측 상단에 스키마가 들어가 있는지 까지 확인하면 끝이 납니다.
2022.11.06