분류 전체보기

엔티티의 4가지 상태에 대해 알아보자. 비영속(new/transient)영속성 컨텍스트와 전혀 관계가 없는 상태,객체를 생성’만’ 한 상태영속(managed) 영속성 컨텍스트에 저장된 상태Entity가 영속성 컨텍스트에 의해 관리되는 상태준영속(detached)영속성 컨텍스트에서 지운 상태삭제(removed) 삭제된 상태  하나씩 조금 더 구체적으로 알아보자. 🍀 비영속(new/transient)영속성 컨텍스트와 전혀 관계가 없는 상태, 객체를 생성’만’ 한 상태// 객체를 생성한 상태 (비영속)Member member = new Member();member.setId("member1");member.setUsername("회원1");  🍀 영속(managed) EntityManager.persist..
📍 HTTP 메소드에서의 멱등성 🍀 한 줄 요약: 요청(Request)을 한 번을 호출하든 여러 번을 호출하든 그 결과가 같음을 의미, 🍀 여러 번 동일한 요청을 보냈을 때, 서버에 미치는 의도된 영향이 동일한 경우 동일한 요청을 한번 보내는 것과 여러번 연속으로 보내는 것이 같은 효과를 가지고, 서버의 상태도 동일하게 남을 때 해당 HTTP 메서드가 멱등성을 가진다고 말할 수 있다. (응답 상태 코드가 아닌 서버의 상태와 관련이 된다!) HTTP 스펙에 따르면, GET, PUT, DELETE 메소드는 멱등성을 보장해야한다고 나와있다고 한다. 한 번 하나씩 살펴보도록 하자. 1️⃣ GET 메소드 : 서버에 존재하는 리소스를 단순히 읽어오기만 하는 메소드이기 때문에 당연히 여러번 수행되어도 결과값은 변하지..
📍 this와 this() 키워드 🍀 한 줄 요약 : this는 인스턴스 자신을 가르키는 참조 변수이고 this()는 생성자를 뜻한다. 세미나에서 다뤘던 아래의 예시를 살펴보면, Person 생성자에서 인스턴스 변수 값을 세팅하기위해 this.name = name가 같이 사용한 것을 볼 수 있다. public class Person { private String name; private int age; private String sex; public void walk() { System.out.println("사람이 걷습니다."); } public Person(String name, int age, String sex) { this.name = name; this.age = age; this.sex = ..
*인프런 '김영한'님의 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 강의를 듣고 정리한 내용입니다. 회원 도메인 개발 회원 서비스 개발@Transactional(readOnly = true) 조회(읽기)용일 때 사용하면 성능에 좋다.@RequiredArgsConstructor private final MemberRepository memberRepository**;** 생성자 주입 방법(아래와 같이 많이 사용) 🌟 @Transactional jpa의 모든 데이터 변경이나 로직은 가급적 트랜잭션 안에서 실행되야 함. 회원 테스트db에 쿼리 나가는 걸 보고 싶다면, @Rollback(false)한다.test > resources > application.yml 이유가? 좀 더 찾아봐야겠다 끝..
*인프런 '김영한'님의 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 강의를 듣고 정리한 내용입니다. 1.프로젝트 설정 프로젝트 생성 *3.0.5버전은 java 17에서 지원, java11 지원 안 함. 라이브러리 살펴보기 hikariCP 커넥션 풀 → 찾아보기 라이브러리 추가(from. 강의자료) Validation (JSR-303 validation with Hibernate validator) 모듈을 꼭! 추가해주세요. build.gradle에 다음 코드 추가 implementation 'org.springframework.boot:spring-boot-starter-validation' JUnit4 추가 (안 하면 JUnit5로 동작) testImplementation("org.ju..
백준(BEAKJOON) | 알고리즘 분류 이진탐색 #2110번 https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 문제 | 도현이의 집 N개가 수직선 위에 있다. 각각의 집의 좌표는 x1, ..., xN이고, 집 여러개가 같은 좌표를 가지는 일은 없다. 도현이는 언제 어디서나 와이파이를 즐기기 위해서 집에 공유기 C개를 설치하려고 한다. 최대한 많은 곳에서 와이파이를 사용하려고 하기 때문에, 한 ..
· github
일단!!! 드디어 CI/CD 구축과 무중단 배포를 끝냈다! 약 한달? 정도는 걸린것 같은데,,,, 중간에 오류도 너무 많았고, 스트레스도 많이 받았지만, 늘 그랬듯 성공하고 나서의 기분은 진짜 너무 좋았다.......... CI/CD는 작년 하반기 동아리에서 했던 프로젝트를 하고나서 해보고 싶다는 생각이 많이 들어서 이번에 도전하게 되었다. (thanks to. 도움을 준 모든 사람들과 블로그💓) 서론이 긴 것 같은데.. 아무튼 완벽하게 정리하지는 못하겠지만, 천천히 글을 정리해보려고 한다.(시작!) 1. 깃허브 액션 생성 가벼운 스프링 부트 프로젝트를 생성한 뒤, 깃허브 레포지토리와 연동한 후, actions 탭을 누르고, master.yml을 생성한다. 우선 나는 master 브랜치를 default로..
스터디 2회차 ✅ 범위 : 쿼리 메소드 기능 - 스프링 데이터 JPA 페이징과 정렬까지 단축키 → shift + F6: 한 꺼번에 이름 바꾸기 1. 쿼리 메소드 기능 메소드 이름으로 쿼리 생성 1.1 범위 지정 쿼리 메소드를 사용해 조건에 맞는 데이터를 쉽게 조회할 수 있다. 쿼리 메소드에서 제공하는 키워드를 사용해 정확한 범위를 지정할 수 있다. 1.2 쿼리 메소드 필터 조건(Distinct, And, Or 등..) Spring Data JPA - Reference Documentation 1.3예시 public interface MemberRepository extends JpaRepository { List findByEmailAndName(String email, String name); List..
주디(Junior developer)
'분류 전체보기' 카테고리의 글 목록