본문 바로가기

분류 전체보기38

[MING-MARTKET]JPA - merge를 이용하여 값 수정시 null(변경 감지 방법_dirtyChecking 으로 수정) 중고거래장터 밍마켓 유저는 상품을 자유롭게 올릴 수 있다. 올린 상품을 수정할 수 있다 Controller @PostMapping("/{productId}/edit") public String create(@PathVariable Long productId,@Valid @ModelAttribute("form") CreateProductForm form, BindingResult result, @LoginCheck MemberDto.SessionMemberData loginMember, RedirectAttributes redirectAttributes, HttpServletRequest request ) throws IOException { if (result.hasErrors()) { //만약에 res.. 2022. 6. 23.
Junit5 에서 Exception 테스트 (Junit4 @Test(expected = exception) 코드로 보는 것이 확실하게 이해가 될 것이다. 예제: 회원가입시 중복 회원은 가입할 수 없다. service @Service @Transactional(readOnly = true) @RequiredArgsConstructor public class MemberService { private final MemberRepository memberRepository; @Transactional public Long join(Member member) { //EXCEPTION List findMembers = memberRepository.findByName(member.getName()); //회원이름으로 조회 if (findMembers.size() > 0) { throw new IllegalStateEx.. 2022. 5. 31.
[GitHub] 깃허브 토큰(Token) 생성하기 오랜만에 깃 토큰 만료돼서 새로 생성을 하려다 갑자기 어떻게 했는지 기억이 나지 않아 충격이었다. 1. 오른쪽 상단 프로필에서 'settings' 클릭 2. 왼쪽 하단에 'Developer settings' 클릭 3. 'Personal access tokens' 클릭한다. 4. 'Generate new token' 클릭 후 패스워드 입력 5. Note: 토큰 이름, Expiration: 유효기간, Select scopes: 필요한 권한 체크 (나는 repo정도만 관리하기 위해서 repo만 체크했다.) 6. Generate token 버튼을 클릭해서 토큰을 생성한다. 7. 토큰 번호 꼭 저장! + 만료된 토큰은 Delete 2022. 5. 28.
프리뷰 그라운드 : 개발자 면접 멘토링 후기 https://previewground.oopy.io/ 프리뷰 그라운드 : 개발자 면접 멘토링 현직 개발자가 기술 면접, 피드백, 질의 응답을 해드립니다. previewground.oopy.io 개발자 공부를 시작한 지 9~10개월이 다 되어간다. 사실 12월 중순 국비학원 수료 후 어떤 방향으로 어떻게 공부를 해야 할 지 몰라서 2~3달은 많은 실패가 있었고 결론적으로 얻은 것이 없는 시간이었다. 학원의 수업 진도도 굉장히 빨랐으며 생략된 부분도 많았다. 결국 CS,자바,스프링 등 모든 부분의 기초적인 지식이 굉장히 부족했고, 사실 학원은 핑계고 내가 제대로 공부를 안 한 것이다. 최근 다시 공부에 집중할 수 있는 상태가 겨우겨우 되었다. 하지만 내 주변엔 개발자 지인이 없기 때문에 스터디나 세미나에 .. 2022. 4. 30.
JPA란?(HIBERNATE, HIBERNATE설정, jpa 구동방식, ORM) JPA (Java Persistence API) JPA란? JPA는 자바 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용되는 인터페이스의 모음 ORM? ORM(Object Relational Mapping) 자체적으로 쿼리문 생성(SQL문 불필요) SQL Query가 아닌 자바 코드(메서드)로 데이터 조작이 가능 물론, SQL Query도 사용할 수 있지만, @Query와 같은 Annotation으로 코드에서 사용할 수 있음 장점: SQL 중심적인 개발이 아닌 Method를 통해서 DB를 조작할 수 있어, 개발자는 객체 모델을 이용해서 비즈니스 로직을 구성하는데만 집중할 수 있음. (개발자가 CRUD용 쿼리를 따로 작성할 필요가 없다) 단점: 통계 쿼리처럼 매우 복잡한.. 2022. 4. 29.
JSP와 Thymeleaf (차이점, 동작 원리) JSP가 아닌 Thymeleaf를 쓰는 이유는? JSP와 Thymeleaf의 가장 큰 차이점은 JSP와 달리 Servlet Code로 변환되지 않는다 순수 HTML구조를 유지한다.(Natural Tamplate) 따라서 비즈니스 로직과 분리되어 오로지 View에 집중할 수 있다. 서버상에서 동작하지 않아도 된다.(JSP는 서버를 통해 Servlet코드로 변환되어 랜더링 된다) Jar 패키징이 가능하다.(사실 이것의 장점을 아직 잘 모르겠다. 더 공부해야 할 듯) Thymeleaf의 동작 원리 Web Browser가 Http Method(GET)을 통해 hello 전달 이것을 톰켓 서버가 맨 처음 받아 Spring Boot에 전달 Spring Boot는 helloController에게 내용을 전달 해 주고.. 2022. 4. 1.