전체 글 128

I18N

1) 리소스 번들 파일 작성    src/main/resource                      bundle                          message.properties ( 기본 )                          message_en.properties ( 영어 )                          message_ko.properties ( 한국어 ) 2) application.properties에 등록   3) 컨트롤러에서 번들 참조 + header 값 얻기 - MessageSource API 이용 - header 값 얻기  4) 요청 header 값으로 언어 선택  - Talend Test API에서 header 설정  추가  이렇게 값을 추가해 줄 수..

REST 2024.06.26

POST 응답처리 개선하기

1) status 명시적으로 설정   - 사용자한테 자세한 status를 알려줘야한다  - ResponseEntity 의 메서드 사용하여 status 값을 반환할 수 있음   - status 값 종류   200 : 성공   201 : Create 저장했을 때 성공하면 발생하는 값   204: No Content    400: ResponseEntity.badRequest().build();   404 : Not Found   405: method not  allowed   500: Internal Server Error    2) 링크   3) Hateoas ( 헤이티오스 : ) , REST API 성숙도 모델 4단계   보통은 2단계까지만 적용하는데 4단계까지하면 굳 ex> 10번을 요청했을때 json..

REST 2024.06.25

REST 정리 (GET 조회, POST 생성, PUT 수정, DELETE 삭제)

1. Representational State Transfer- 웹 어플리케이션 개발 방법론 중의 하나로서 클라이언트와 서버간의 상태정보를 표현하는 방식을 의미 ( 어제까지 개발 방법론이 SOAP임 )REST는 개발방법론 중 하나 REST가 트렌드지만SOAP은 기본이라서 할 줄 알아야한다 1) SOAP 아키텍쳐클라이언트    ---------        서버(웹브라우저) 2) REST 아키텍쳐 (XML/ JSON 통신) (XML은 잘 안씀)    (요청 @RequestBody, 응답 @ResponsBody)@RestController - @Controller, @ResponseBody를 결합 2. REST 디자인 가이드 구글링  디자인 패턴 종류 ( MVC, 빌더패턴, 프론트 컨트롤러, 싱글톤 )  -..

REST 2024.06.25

상품등록, 상품 찜 했을때 로그인한 userid를 DB에 저장

1. 상품 찜 했을때 로그인한 id값이 cart DB에 저장 로그인한 유저 id값 받는 스프링부트 시큐리티 로직Authentication auth = SecurityContextHolder.getContext().getAuthentication();UserDTO xxx = (UserDTO)auth.getPrincipal();dto.setUserid(xxx.getUserid());  2. 상품 찜하고 cart DB에 로그인한 id 저장 후 장바구니 페이지에서 로그인한 id와 일치하는 리스트만 불러오기  ModelMap 쓸때 - 위에 처럼 적용 Authentication auth = SecurityContextHolder.getContext().getAuthentication();UserDTO xxx = (..

팀원과 같은 파일 수정해서 충돌 났을때

내가 프로젝트 진행 중에 수정한 파일 git에 올릴려고다른 팀원이 미리 올린 파일 pull 받을려고 함 근데 같은 파일 수정한 기록이 있어서 pull이 안되고 confilt 됌 이때 나는 내가 수정한 파일 커밋하고 다시 pull을 받음pull 받고 충돌난 파일 수정 후 다시 git Staging가면 내가 커밋한 파일들과 같이 수정한 파일 commit 시키고 git에 push함

Git 2024.06.19

장바구니에서 체크한 리스트만 삭제하기 ( 체크박스 선택/해제, 선택한 리스트 삭제 )

jsp, springboot, mysql 사용 jsp에 체크박스에 해당하는 input 태그에 onchange="checkAll(this)" 를 넣어줌이렇게 써주기만 하면 체크박스 선택/해제 완료 리스트마다 달리는 체크박스에 value 값을 넣어준다 value를 넣어서 체크박스에 체크를 하면 dto에서 해당 리스트에 해당하는 gCode 값을 받아온다   ${pageContext.request.contextPath}/deleteChecked 은 contextPath를 정해주는거고컨트롤러 매핑값에도 동일하게 적어준다.  @PostMapping("/deleteChecked")   sysout은 항상 보이기 때문에 쓰면 안되는데여기서는 deleteItems를 통해서 code에 어떤값이 들어오는지 볼려고 넣어놨다

Goods 테이블에 있는 값을 Cart 테이블에 저장 ( 상품페이지에서 찜 버튼을 누르면 장바구니에 저장 )

상품페이지에서 찜 버튼을 누르면 장바구니에 저장시킬려고 함    찜 버튼이 있는 jsp에서 taglib prefix=form 써서 값 넘겨주기form을 제대로 쓰면 페이지에서 f12누르면 form태그 라인에 action이 추가된다    값이 제대로 넘어가면 컨트롤러 로직을 통해 DTO로 저장되고 컨트롤러 - DTO - 서비스 - 매퍼 순으로 넘어간다    매퍼에서 cart 테이블에 값을 저장해야돼서 조인을 씀    insert문의 join INSERT INTO cart (userid, gCode):cart 테이블에 userid와 gCode 컬럼에 데이터를 삽입합니다.SELECT #{userid}, g.gCode:SELECT 절에서 #{userid}는 MyBatis의 parameter로 전달된 사용자 ID..