[2025백엔드] 스프링인액션 독서 #7 - 4장. 스프링 시큐리티 2
·
CS/백엔드
어디선가~ 블로그에~첨부사진 없으면~마마마마마마치 엄청난 기운이~마저합시다저번에는 스프링 시큐리티와 JDBC, LDAP 방식으로 값을 조회하는 방법을 알았다. 이제는 사용자 인증을 커스터마이징 해 볼 때다.UserDetailsUser 도메인에 UserDetails를 적용할 수 있는데, UserDetails는 스프링 시큐리티가 기본제공하는 인터페이스이다. 이를 통해 구현된 User 클래스의 정보가 스프링에 전달된다. UserDetails와 이의 메서드에 관한 게시글이 있다https://programmer93.tistory.com/68 Spring Security UserDetails, UserDetailsService 란? - 삽질중인 개발자Spring Security - UserDetails , User..
[2025백엔드] 스프링인액션 독서 #6 - 4장. 스프링 시큐리티 1
·
CS/백엔드
스프링 시큐리티. 보안에 중요하지책 초반에 나오는데, 나는 OAuth를 위해 미리 SecurityConfig 를 작성했지만 이를 작성하지 않을경우 기본 HTTP 인증 대화상자가 뜬다. 기본 http 인증 대화상자의 사진을 첨부하고 싶은데 나는 OAuth 관련해서 의존성이나 이런게 이것저것 엮여있어서 에러가 뜨므로 실패 어쨌든 SecurityConfig 없이 기본으로만 사용했을 경우..모든 HTTP 요청은 인증되어야하며, 특정 역할/권한이 없고, 로그인페이지가 없고, HTTP 기본인증을 사용하고, 사용자는 하나만 있다. 이러면 당연히 웹페이지를 만드는데 제약이 있을수밖에 없다. 따라서 내가 직접 사전에 security 관련 설정을 해두어야한다.사용자 스토어스프링 시큐리티는 스프링 6으로 넘어오면서 몇 개의..
[2025백엔드] 스프링인액션 독서 #5 - 3장. 데이터로 작업하기 #3
·
CS/백엔드
이렇게 사진도 잘찍는 법을 알고싶다.. 보정공부도 해야하고 노출공부도 해야하고.. 이상하게 개발공부보다 더 어려운 것 같다. 이러면서 2학기 때 디디입을 한다고? 암튼 지금 DB의 늪에 빠져있는데, 우선 늪을 벗어나봅시다!저번까지는 JDBC를 사용했고, 오늘부터는 JPA를 사용할 것이다. 다만 지금 GDG 프로젝트에서만 JPA를 적용할 것이고, 당분간 내 개인프로젝트에는 JDBC를 사용할 계획이다. 우선 SQL문에 익숙해지는게 목적이기 때문에...JPA를 깔았다는 전제하에..@Entity@Data@Builder@NoArgsConstructor(access = AccessLevel.PRIVATE, force = true)@AllArgsConstructorpublic class Member { @Id ..
[2025백엔드] 스프링인액션 독서 #4 - 3장.데이터로 작업하기 2
·
CS/백엔드
오늘은 9시부터 코어타임에 갔다왔는데.. 경기도 통학 1교시? 사람이 하는게 아니다.암튼 7시에 나가서 코어타임 갔다가 밥 먹고 여권발급까지하고 집에 오니까 14시가 됨. 그래서 알바 가기 전에 책이나 한 번 읽으려고한다. 오늘 API 연결하려다 실패해서 개발은 더 못하겠음@SessionAttributes여기서 나온 타코 주문과 같이 다수의 HTTP 요청에서 사용할 자료가 있을 때, Model 객체를 사용해 VIEW에 데이터를 전달할 경우에는 SessionAttributes를 사용할 수 있다고한다. 아니면 쿠키처럼 내가 세션에 추가해야하는데, 그냥 JWT토큰을 발급합시다 model 객체에는 다음의 메서드가 있는데,model.addAttribute("name", Object);이 메서드는 Object를 n..
[2025백엔드] 스프링인액션 독서 #3 - 3장.데이터로 작업하기 1
·
CS/백엔드
헤드퍼스트자바를 어느정도 읽고 나니까.. 확실히 이 헤드퍼스트자바 책을 좀 빨리, 그리고 많이 읽었으면 좋겠다고 생각했다.여타 개발 책들과는 구성도 다르고, 개념과 코드를 같이 익힐 수 있다고해야하나아니면 내가 스프링 CRUD(엉터리긴하지만)를 통해 자바 지식을 좀 획득해서 내용이 재밌고 잘 읽히는 것일수도 있다. 그래도 너무 헤드퍼스트자바만 읽기는 좀 그래서 읽은지 좀 된 스프링 인 액션 책을 읽기로 했다.두 책을 합치면 77000원이다. 내가 하루 알바가도 다 못버는 돈...... 솔직히 IT책들 너무 비싸요JDBC 동적인 애플리케이션을 정적인 웹사이트와 차별화하는 것은 사용자에게 보여주고 저장하는 데이터다.이전에 DDD를 하면서 Repository 를 배웠다가 Entity 어노테이션을 통한 DB연결..
[2025 백엔드] 스프링 인 액션 독서 #2 - 2장. 웹 애플리케이션 개발하기
·
CS/백엔드
ㅎㅇ여기 읽다가 Model과 도메인 개념을 알아보고자 했는데 어쩌다보니 DDD 개념까지 엄청나게 커져서 결국 2일에 나눠 읽었다.용어정리내용정리유효성 검사하기홍대 맛집 아카이빙 프로젝트 #6.1에서...밑에 TDD와 Validator만 알면 된다고했는데 TDD는 헤드퍼스트자바 5장에서 기초를 익혔고 대망의 Validator가 스프링인액션 2장의 주인공 중 하나다.왜 쓸까?폼에서 정보를 입력받기로했는데 이상한 값이 올 경우 (주소지에 노래가사를 적거나 하는 등) 로직이 이상하게 작동할 수 밖에 없다. 따라서 유효성 검사를 통해 입력된 정보가 올바른지 파악해야한다. 스프링은 빈 유효성 검사 API를 지원한다. 대략적으로는- 유효성을 검사할 클래스에 검사 규칙 선언- 컨트롤러 메서드에 검사 수행하는 것을 지정..
[2025 백엔드] 도메인과 Model, 도메인 주도 개발 (DDD)
·
CS/백엔드
스프링 인 액션 책을 읽다가.. 도메인에 대해 나와서 좀 이해 좀 하고 넘어가려고 이 글을 쓴다. 도메인에 대한 이해가 없이는 코딩을 시작할 수는 없다. 요구사항을 분석한 것을 바탕으로 기획서, 유스케이스, 사용자 스토리를 통해 도메인을 이해하고 이를 바탕으로 도메인 모델 초안을 만들어야 비로소 코드를 작성할 수있다. 출처 : https://doing7.tistory.com/79 Domain, Entity, Value(Object)Spring 프로젝트 중에 Domain, Entity, VO(value object)라는 용어들이 반복적으로 등장하지만, 정작 이들의 차이를 모르고 있다는 생각이들었다. 이에 관련되어 더 공부하고자 DDD START 도메인 주도 설계(최doing7.tistory.com그렇게..
[2025 백엔드] 스프링 인 액션 독서 #1 - 1장. 스프링 시작하기
·
CS/백엔드
읽는 책은..스프링 인 액션 제 5판처음부터 읽기모르는 용어정리마이크로서비스 - 하나의 애플리케이션을 독립적으로 기능하는 작은 서비스들의 모임으로 구성하는 아키텍쳐 스타일 ↔ 모놀리식 아키텍처. 각자의 독립적인 작은 서비스들이 정해놓은 규칙에 따라 인터페이스하며 하나의 서비스를 제공. 지금 내가 하고있는 스타일은 모놀리식 아키텍처.GPT에게 물어본 결과 마이크로 서비스의 조건은- 독립된 배포가 가능해야하며 (같은 스프링 프로젝트 안에서 서비스를 직접 호출하는 것은 예외),- 독립된 DB를 사용하고- API 등의 네트워크 기반 통신,- 느슨한 결합도가 필요하다. 컴포넌트 - 하나의 독립적인 기능을 수행하는 단위'기능'에 따라 나뉘어지며 (기능이 없는 DTO는 컴포넌트라 볼 수 없다) , 다른 컴포넌트들과는..