SpringBoot 6

JDBC가 등장한 이유와 JPA로 넘어간 이유

JDBC는 자바 개발자로서 한번 쯤은 들어봤을 단어이다 우리는 JDBC의 중요함을 알아야 한다.우리에게 아주 큰 편의를 제공해주고 있기 때문이다!   서버 개발자로서,JDBC는 무엇이고, 왜 필요한지, 어디에 사용되고 있는지 알고가자!JPA가 등장한 이유도 알면 좋겟져?  JDBC 등장 이유 우리는 DB에 접근해서 데이터를 달라는 요청을 보통 아래 그림과 같은 방식으로 한다.  이런 과정들이 성공적으로 이루어져야, DB로 부터 우리가 원하는 데이터를 받을 수 있다.(모두 경험해봤겠지만, DB를 수작업으로 연결하는건 어려울 걸..?)  그런데 만약, MySQL로 개발을 잘 하고 있다가,갑자기 개발팀장이 "우리 팀은 MySQL에서 postgreSQL로 마이그레이션 하겠습니다" 라고 한다면 어떤 기분이 들까?..

Back-End/JavaSpring 2025.03.20

요즘은 클라이언트에게 정적 페이지/동적 페이지가 아닌, 데이터를 반환해준다고? (Spring Boot)

동적페이지와 정적페이지, 우리는 이 두 개를 잘 알 것이다.그래도 동작 방식과 차이점에 대해서 정리해두면 좋을 거 같아서 끄적여 본다   동적 페이지와 정적 페이지의 차이점과 동작 방식에 대해서 알아 보겠다. 1. 정적 페이지 처리하기   위의 그림을 보면 쉽게 이해가 될 것이다. 난 spring을 공부하고 있으니, springboot 기준으로 설명하겠다.springBoot 서버에 html파일을 요청하면 해당 html파일을 static폴더에서 찾아서 반환해준다    혹은 template engine에 뷰를 전달해서 정적페이지를 띄워줄 수 있는데,static 폴더에 있는 html파일을  localhost:8080/index.html 처럼, 바로 호출할 수 있지만, 이처럼 브라우저에서 바로 접근하는 것이 싫..

Back-End/JavaSpring 2025.02.27

Jackson이란? (spring boot)

1. Jackson은 뭘까?개발 하다가 jackson 라이브러리를 dependeny에서 확인하게 되었는데,문득 엇 이건 뭐지라는 생각이 들어서 찾아보게 되엇따..   그런데 잠깐... 혹시....   전설의?        그렇다 Jackson은 JSON 데이터 구조를 처리해주는 라이브러리 인 것!! Object -> JSONJSON -> Object 로 변환이 가능하다는 점! Spring은 3.0 버전 이후로 Jackson과 관련된 API를 제공하면서,우리가 직접 소스코드를 작성하여 JSON 데이터를 처리하지 않아도 자동으로 처리해주고 있다.(springboot-starter-web에는 default로 Jackson관련 라이브러리들을 제공하고 있다) 직접 JSON 데이터를 처리해주고 싶으면, Jackso..

Back-End/JavaSpring 2025.02.25

SpringBoot를 잘 알아보자(gradle, apache tomcat, springboot의 탄생배경) - (1)

springboot를 접하고 많은 기초를 뛰어 넘고 프로젝트를 시작하였다..점점 그 깊이가 깊어질수록 제대로 공부를 해야겠다는 마음을 먹었다. 물론, 개발을 할때 모든걸 알고 시작하려는 것은 매우 미련한 행동이라고 생각하는데어느정도 감을 잡았을 때는, 다시한번 뒤로 돌아와 기초를 다지는 것이앞으로 큰 프로젝트를 준비하는데 큰 도움이 될 것이다. 전반적으로 springboot에 대한 이야기를 할 예정인데먼저 Gradle에 대해서 이야기를 해보겠다. spring과 springboot에 대한 이야기더보기 spring 프레임워크는 바야흐로 2004년 1.0이 등장한 이후에 20년넘게 사랑받으며 업그레이드 되었고, 현재는 Spring 6.0이 등장!  Spring은 AOP, IoC/DI 등과 같은 아주 강력한 핵..

Back-End/JavaSpring 2025.02.17

SpringBoot 팀 프로젝트 초기 세팅

안녕하세요 오늘은 springboot 팀 프로젝트 초기세팅에 대해서이야기 해보려고합니다. 다양한 프로젝트에 참여하다보니프로젝트 초기세팅에 많은 시간을 투자한다는 것을 알게되었습니다.그만큼 중요해서 그렇겠죠? 각설하고,여러 프로젝트를 하면서 제가 항상 갖추던 개발 초기세팅을 공유하겠습니다   1. 프로젝트 개발 프로세스 파악먼저 프로젝트를 시작하기 위해서는 개발환경을 파악하는 것이 중요합니다아래는 초기 프로젝트에 필요한 개발 프로세스를 작성한 것입니다. 아래와 같이 정리해서 아카이빙 해두면 나중에 프로젝트를 진행할때 참고도 할 수 있고프로젝트를 진행하면서 계속 확인하면서 할 수도 있어서한번 미리 정리해두고 개발하는 것이 유리합니다기술 스택 - 백엔드: Spring Boot 3.x - 데이터베이스..

Back-End/JavaSpring 2025.02.13

DTO 에서 회원정보 유효성 검증하기 (spring boot, @Valid)

회원가입에서 유저 정보를 받아올때, 아이디,패스워드,이메일,성별 등의 유효성 검증은 필수적입니다.아이디의 최소/최대 글자 수는 충족하였는지, 패스워드에서 특수문자와 영문자는 포함되었는지 등을 검증하는 로직이 필요합니다. 이에 대한 검증 로직을 모두 추가해주어야 하는 두려움이 발생하였지만, 그 두려움도 잠시스프링에서 유효성 검증을 해결해주는 dependency를 찾았습니다!!제가 구현한 검증 로직은 아래와 같습니다.  1. validation dependency 추가하기 implementation 'org.springframework.boot:spring-boot-starter-validation' 이전에는 spring-boot-starter-web 의존성 내부에 validation이 있었지만,spring..

Back-End/JavaSpring 2024.12.24
728x90