여기 input을 받아서이 컨트롤러로 처리를 할 건데아니 여기에 이름 데이터가 어떻게 담기는건지 이해가 잘 안 갔다.대충 보니까 memberForm의 name이랑 input태그의 name속성이 "name"으로 같아서 이게 가능하다고 하더라. 이렇게 하면 memberFo

프로젝트에서 lombok사용시 설치 후 command+,로 preferences가서(intelliJ기준) annotation 검색 후 enable annotation processing을 클릭하고 ok눌러줘야한다.

스프링부트 개발을 할 때 도움되는 library build.gradle에 implementation 'org.springframework.boot:spring-boot-devtools' 해주면 된다. 보통 스프링 개발 시 수정내용을 반영하려면 진행중인 프로세스를 sto
이게 내 application.yaml 파일인데 datasource부분에 연결할 h2 database의 주소를 적고 usernam,password는 설정된 대로 적어주면 된다. 위의 경우 password는 없어서 안 적었다.

스프링에서 테스트를 만들 때 외부DB에 연결하지 않고 JAVA 내부 메모리에 DB를 생성해서 거기에서 테스트가 돌도록 하는 법 test폴더에 resources폴더를 만들고 그 안에 application.yml폴더를 만들어준다.이게 없었을 때는 jpashop2-src-m
기본적으로 JPA에서 데이터에 손을 대는 것들은 @Transactional이 있어야한다.class레벨에 @Transactional를 쓰면 Public 메서드에는 기본적으로 @Transactional아 걸려들어간다.@Transactional이 @Test와 함께 작용하면
그래야 엔티티가 화면에 의존적이지 않고 순수하게 유지되어 확장성과 유지보수성이 높아진다.
이런식으로 해주자.merge를 통해서 수정하는 방법도 있긴 하지만 이렇게하면 itemParam의 식별자 값으로 엔티티(originalItemd이라고하자)를 조회하고 그 엔티티(originalItem)에 itemParam의 모든 속성을 다 주입한다. 그런데 여러 이유로

위와 같이 회원명과 주문상태(Order,Cancel)에 따라 주문을 검색할 수 있는 기능을 개발하려 한다.html 코드Controller 코드화면의 경로는 /orders다.검색창 부분처음에 get요청으로 검색페이지로 이동하면 orderSearch라는
스프링으로 개발하다가 테스트를 하면서 내가 한 작업들의 결과를 DB에서 눈으로 보고 싶을 때가 있다. 원래 @Test와 @Transactional이 합쳐지면 테스트가 끝나고 롤백이 되어서 DB에는 테스트의 결과가 안 보이는데테스트에다가 @Rollback(false) 어
N(클래스A) 대 1(클래스B) 연관관계의 A, B가 있고 A는 오직 B에만 의존하는 클래스였다. 그래서 B클래스를 삭제할 때 B에 mapping되어 있는 A클래스들을 모두 삭제하려고 @ManyToOne(fetch = FetchType.LAZY, cascade = Ca
스프링에서 entitymanger.remove(a)를 했는데 a객체가 detached 상태면 remove가 안되더라. 그래서 이렇게 해줬다. 정확한 해결책은 조금 더 찾아보자.

프로젝트를 진행하면서 Spring security를 이용해서 정말 간단한 회원가입, 로그인 로직을 구현해서 기록으로 남긴다. 모든 스프링 Security가 이런 구조로 동작하는지는 모르겠다. 그건 나중에 공부하면서 채워가자security에 관한 configuration

Spring security에서 로그인 관련한 설정에 대해 간단히 기록application.yml이나 application.properties에라고 적어주면 한번 로그인한 세션이 90분동안 유지됨.spring security의 configuration 파일에해주면됨.그
현재 localhost:3002에 프론트 띄워져있고, localhost:8080에 백엔드 있음1.CORS에러나서 백엔드에 config폴더 만들고 WebConfig클래스 추가해줌2.지금 프론트에서 레스토랑 추가 해주는 거 만들었는데 그래서 백엔드 코드 수정함(addRes