분류 전체보기

    [WIL] 230710 ~ 230716

    목표 달성 여부 😥 스프링 숙련, 심화 강의 다 못 들었다..ㅠㅠ 😊 스터디 진행은 잘 한 것 같다. 😥 후발대 수업은 못 들었다.. 과제 내 주셨다고 들었는데.. 이번 주 내가 한 것 스터디 진행(벌써 6주..!!) 뉴스피드 프로젝트가 끝났으므로 lv.1에서 정답률이 낮은 문제 "성격 유형 검사하기"를 골라서 월요일에 풀어보기로 하고, 어려운 문제는 각자 발표 자료를 준비했다. 프로젝트에 강의에 버거워서 스터디를 계속 할 수 있을까 매번 생각하지만, 열심히 해주는 분들을 볼때마다 내가 시작한 스터디인데 그래도 끝까지 책임져야지 라는 생각을 하면서 열심히 해보는 것 같다. 스프링 심화 주차 과제(lv.4) 이번에는 이슈에 할 일을 올리고 이슈번호로 브랜치를 만들어서 PR을 할 때 그 때 그 때 있었던 트..

    [TIL] SQLSyntaxError ( 컬럼명 like 문제)

    발생한 예외 create table posts ( id bigint not null auto_increment, created_at datetime(6), modified_at datetime(6), contents varchar(255), like bigint, title varchar(255) not null, user_id bigint, primary key (id) ) engine=InnoDB" via JDBC [You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'like bigint, title varchar..

    [TIL] AnnotationException 예외 발생 (mappedBy)

    발생한 예외 내용 Caused by: org.hibernate.AnnotationException: Collection 'com.example.jisoo_blog.entity.Post.comments' is 'mappedBy' a property named 'posts' which does not exist in the target entity 'com.example.jisoo_blog.entity.Comment' 해석해보면 Post의 comments 콜렉션이 posts와 mappedBy되어 있는데, Comment Entity에는 그런 필드명이 없다. 는 것 같다. Post의 코드 @Table(name="posts") public class Post extends Timestamped { @Id @Gen..

    [TIL] DefaultHandlerException 예외발생(추가공부 필요)

    이슈 GET요청을 받아올 때, 다음과 같은 예외 발생 2023-07-14T04:34:09.773+09:00 WARN 11788 --- [nio-8080-exec-3] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException : No acceptable representation] 컨트롤러 단의 코드 @GetMapping("/view/all") public ResponseEntity getPosts() { PostsResponseDto result = postService.getPosts(); return ResponseEntity.ok().body(result)..

    [TIL] http.authorizeHttpRequests.requestMatchers API 설정(정확한 해결 방법 추가 기록 필요)

    이슈 스프링 부트로 블로그를 만드는 과제를 하고 있는데 내가 작성한 포스트 조회에 대한 API 명세서는 이러하였다. 이름 Method URL 전체 게시글 조회 GET /JisooBlog 선택 게시글 조회 GET /JisooBlog/1 이 두 기능은 인가 필터와 인증 필터를 거치지 않고 비회원에도 보여질 수 있게끔 하기 위해서 설정이 필요했다. WebSecurityConfig 클래스에서 http.authorizeHttpRequests.requestMatchers 설정을 해주면 되겠다 생각해서 http.authorizeHttpRequests((authorizeHttpRequests) -> authorizeHttpRequests .requestMatchers(PathRequest.toStaticResource..

    [WIL] 230703 ~ 230709

    목표 달성 여부 ❓ 팀장 역할 잘 하기 ✅ 스터디 잘 진행하기 이번 주 내가 한 것 프로젝트 진행 https://github.com/JisooPyo/Trillion-NewSpeed-Project GitHub - JisooPyo/Trillion-NewSpeed-Project Contribute to JisooPyo/Trillion-NewSpeed-Project development by creating an account on GitHub. github.com 회고 일의 우선도를 정하지 못해 괜히 react를 건들이다가 하루를 날리고 프론트 구현을 다 못했다. 팀원들의 기능을 더 잘 보여주고 싶었는데 아쉬웠다. 다음 주 목표 ✔ 스프링 숙련 강의 못 들은 거 다 듣기 ✔ 스프링 심화 강의 다 듣기 ✔ 스터..

    [4-1] JPA - DDL 자동 생성

    [4-1] JPA - DDL 자동 생성

    인프런 - 자바 ORM 표준 JPA 프로그래밍 - 기본편 강의노트 데이터베이스 스키마 자동 생성 DDL을 애플리케이션 실행 시점에 자동 생성(Data Definition Language : 데이터베이스 스키마를 정의하는 일련의 SQL 명령), 어플리케이션 실행 시점에 Entity를 인식하여 데이터베이스 테이블을 만들고 인식된 Column을 자동 생성한다. 테이블 중심 → 객체 중심 데이터베이스 방언을 활용해서 데이터베이스에 맞는 적절한 DDL 생성 이렇게 생성된 DDL은 개발 장비에서만 사용, 운영에서는 사용 X 생성된 DDL은 운영서버에서는 사용하지 않거나, 적절히 다듬은 후 사용 속성 : hibernate.hbm2ddl.auto create : 기존테이블 삭제 후 다시 생성 ( DROP + CREAT..

    [ Spring ] Trillion 조 - Exercise Blog Project KPT

    KEEP 지수 자기가 맡은 기능을 다 구현했음에도 프로젝트가 끝날때까지 선택기능을 구현하려고 하고, 실제로 더 구현했고, 더 하려고 하는 의지가 좋았다. 행복 다들 열정적인 태도로 계속 임하시구, 꾸준히 개발하려는 자세로 인해서 이번 프로젝트 결과가 잘 나오게 된 것 같습니다! 우진 PR을 이용해서 협업한 점이 좋았다. 코드 리뷰를 통해 필요없는 주석을 많이 쓰고 있단 걸 깨달았다.(주석 엄청 깔끔했는데..?...(?ㅇ?)) 해나 PR로 협업한 점이 좋았고, 피그마, 루시드 차트 등 다양한 툴을 써본 것이 좋았다. 지상 정해진 9to9을 지키려고 최대한 노력한 부분, 팀원분들의 코드를 최대한 이해하려고 노력하기 위해 남들보다 더 반복적으로 강의를 듣고 학습한 것 PROBLEM & TRY 지수 주제에 맞는..

    [3-4] 준영속 상태

    인프런 - 자바 ORM 표준 JPA 프로그래밍 - 기본편 강의노트 준영속 상태 영속상태에서 준영속 상태가 되는 것 영속 상태가 되는 경우 : persist(), find()해서 1차 캐시에 없을 때 영속 상태의 엔티티가 영속성 컨텍스트에서 분리(datached) 영속성 컨텍스트가 제공하는 기능을 사용하지 못함 ( ex. 더티체킹 ) 준영속 상태로 만드는 방법 em.datach(entity) 특정 엔티티만 준영속 상태로 전환 Member member = em.find(Member.class, 150L); // 영속 상태 member.setName("AAAAA"); em.detach(member); // 준영속 상태 System.out.println("========================="); tx..

    [3-3] 플러시

    인프런 - 자바 ORM 표준 JPA 프로그래밍 - 기본편 강의노트 플러시란? 영속성 컨텍스트의 변경내용을 데이터베이스에 반영하는 것! 트랜잭션이 커밋될 때 플러시가 일어난다. 영속성 컨텍스트의 쿼리를 DB에 날려준다. 플러시가 발생되면 어떤 일이 일어나는가? 변경 감지가 일어남. 수정된 엔티티에 대하여 쓰기 지연 SQL 저장소에 쿼리가 등록된다.등록된 쿼리를 DB에 전송(등록, 수정, 삭제 쿼리) 플러시가 발생한다고 해서 DB 트랜잭션이 커밋되는 것은 아니다. 영속성 컨텍스트를 플러시하는 방법 직접 쓸 일은 없는데 테스트해보려면 알아야 한다. 1. em.flush() > 직접 호출 Member member = new Member(200L, "member200"); em.persist(member); em..