일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 복합키
- spring서버
- git
- queryDSL
- ERD 작성
- jwt메서드
- jpa회원가입
- 스프링 부트 기능
- json gson 차이
- 빈생성안됨
- Unsatisfied dependency
- json
- JoinColumn
- @IdClass
- Error creating bean with name
- REST API 규칙
- 인텔리제이
- 최종 프로젝트
- 스프링 부트 공식 문서
- Q 클래스
- github
- 스프링부트오류
- uncheck Exception
- JPA주의사항
- REST란
- 1차캐시
- Filter
- Spring Spring boot 차이
- JPA
- jpa에러
- Today
- Total
목록전체 글 (208)
Everyday Dev System
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/clefIO/btslV1prYyc/E5EaGHnNHRnbgvOWlxJEmk/img.png)
해당 글은 SpringBoot의 공식 문서를 발췌하여 적어놓은 글입니다. Spring Boot 3.1.1 버전 , 링크 : https://spring.io/projects/spring-boot Spring Boot spring.io Intro Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applicati..
▶ git-flow 전략 ▶ github-flow 전략 github-flow 전략은 git-flow 전략을 간소화시킨 전략이다. 평소에는 master랑 develop 브랜치 두개를 쓰다가, 새로운 기능을 개발해야 할 경우 feature 브랜치를 master 브랜치에서 생성합니다. feature A, featureB 브랜치들을 1차 통합 단계인 develop 에 통합을 하게 된다. 그 develop 에서 통합 테스트를 진행한다. 배포용 release 브랜치를 만든다. 보통 배포를 할 때는 release 브랜치에서만 이뤄진다. 그런 후에 master에 마지막 최종 merge가 이뤄진다. master까지 반영이 되었는데 버그 발견될 경우에는 hotfix 브랜치를 새로 생성하여 테스트하여 통과되면 develop..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/P7N9L/btslMofDUx5/AuR03Sk0V0M0MhAnkB07g0/img.png)
ORM의 표준 명세인 JPA는 인터페이스이고, Hibernate는 JPA를 구현하는 구현체이다. > ORM과 JPA, Hibernate, Spring Data JPA에 대해서 살펴보자. JPA와 Hibernate, Spring Data JPA 이 세 가지의 차이점을 설명할 수 있어야 한다. 1. ORM 이란? 가장 먼저 ORM이 뭔지 알아보자 Object-Relational Mapping의 약자로, 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것이다. 객체 지향 프로그래밍(OOP) 에서는 Class를 사용하고, 관계형 데이터베이스는 테이블을 사용한다. 그렇다면, 객체 모델과 관계형 모델을 매핑 할 수 있을까? 이러한 궁금증을 해결해주는 도구가 ORM 이다. ORM을 사용하면 비즈니스 ..
https://fenderist.tistory.com/411 [Spring Security] 권한 설정 및 표현식 [Spring Security] 권한 설정 및 표현식 권한설정 선언적 방식 URL http.antMatchers("/users/**").hasRole("USER") Method @PreAuthorize("hasRole('USER')") public void user(){............} 동적방식 - DB연동프로그래밍 URL Method http .a fenderist.tistory.com 표현식 authenticated() ; 인증된 사용자의 접근을 허용 fullyAuthenticated(): 인증된 사용자의 접근을 허용, rememberMe인증 제외 permitAll(): 무조건 허..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cNYMk6/btslMmAN9JK/LkPQDItOY6jEdCwRtHvyqK/img.png)
JPA에서 Entity 객체를 정의할 때 반드시 @Id 속성을 정의하여야 한다. @Id를 정의할 때, 직접 할당, 자동 생성 두가지 방법이 있다. 직접 할당하는 방법 @Id 어노테이션을 해당 칼럼 위에 기재 @Id private Long id; 자동 생성 방법 @Id와 @GeneratedValue 어노테이션 해당 칼럼 위에 기재 GenerationType의 옵션에는 여러가지가 있다. 사용하는 DB에 의존한다. MySQL은 IDENTITY 사용, Oracle은 SEQUENCE 사용 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; 그 중 가장 많이 활용되는 대표적인 것들을 살펴보자 실무에서는 identity가 가장 많이 쓰인다..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/V0pp3/btslDYHczF5/XXDOtRS9ervTeevjVAmftk/img.png)
# 문제점 : 로그인 url에 POST를 제외한 다른 Method로 요청이 들어와서 로그인 처리가 된다는 문제점이 도출되었습니다. GET, DELETE, PUT 등의 요청이 들어오면 로그인 처리가 되지 않도록 거부해야 합니다. 현재 로그인 처리는 아래 클래스에서 수행합니다. (JwtAuthenticationFilter.java) UsernamePasswordAuthenticationFilter를 상속받았습니다. > JwtUtil 타입의 객체인 jwtUtil을 멤버 변수로 갖습니다. JwtAuthenticationFilter 클래스는 아래와 같은 생성자 메서드를 갖습니다. public JwtAuthenticationFilter(JwtUtil jwtUtil) { this.jwtUtil = jwtUtil; s..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/c058ab/btsluhVg847/zrcrieLl6Aq8MPc1o4Oq9K/img.png)
DataBase Table Relationship Entity Relationship Diagram 1. Post와 User는 단방향 N : 1 관계이다. 2. Post는 User 테이블의 username 칼럼을 참조한다. > 1. User, java package com.sparta.myblog.entity; import jakarta.persistence.*; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter @NoArgsConstructor @Table(name = "users")..
Version 1.0 2023.06.15 - [내배캠 주요 학습/Spring 입문] - Spring Boot 블로그 서버 구현 github Repo https://github.com/Chaeyounglim/myblog > 로그인 및 회원가입을 구현하고, 게시글 작성 및 수정, 삭제 시에 JWT 토큰을 활용하여 작성자 여부를 판단하여 수행합니다. 1. DB & Entity Diagram 작성 2. 요구 사항에 따른 API 설계 https://docs.google.com/spreadsheets/d/1JZmNS89s8zFramK_9xyLxhH-iz1DUxvwZ1-F8a9hHng/edit#gid=0 Method URL Request Header Request Response Response Header 기능 P..
페이징 정렬 기능을 위해 설정할 프론트 코드들 더보기 index.html 님의 Select Shop 로그아웃 모아보기 탐색하기 정렬: ID 상품명 최저가 오름차순 내림차순 X ⏰최저가 설정하기 최저가를 설정해두면 선택하신 상품의 최저가가 떴을 때 표시해드려요! 원 설정하기 basic.js const host = 'http://' + window.location.host; let targetId; $(document).ready(function () { const auth = getToken(); if (auth !== undefined && auth !== '') { $.ajaxPrefilter(function (options, originalOptions, jqXHR) { jqXHR.setRequest..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/brIpLm/btsk1aPmWfK/mKQKhAYZ1U3j8dK7nzYaO0/img.png)
github 주소 : https://github.com/Chaeyounglim/myselectshop GitHub - Chaeyounglim/myselectshop: It's use Naver API. It's use Naver API. Contribute to Chaeyounglim/myselectshop development by creating an account on GitHub. github.com 초기 프로젝트 생성 및 설정 : 2023.06.22 - [내배캠 주요 학습/Spring 심화] - My Select Shop 프로젝트 초기 설정 My Select Shop 프로젝트 초기 설정 초기 프로젝트 설정 더보기 0. 프로젝트 생성 1. build.gradle에서 security 의존성 주석처리..