3주차

허현진·2021년 8월 16일
0

Spring

목록 보기
3/4

3-1 뭐배울까~~

서버 완성하기

RestController - 자동 응답기 중에서도 json으로 응답
Service - 업데이트 할때 필요
Repository - 생성, 삭제, 조회 할때 필요
RequestDto - 변경, 데이터 이동 시 필요

HTML,CSS

--> 뼈대, 꾸밈

JavaScript, JQuery

--> 동적 이동

3-2 프로젝트 만들고 API 설계

API : 클라이언트/서버 간의 약속 창구

3-3 Repository 만들기

extends JpaRepository<Memo, Long> {
	**List<Memo>findAllByOrderByModifiedAtDesc();**
}

JPA 공식 홈페이지

:https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods

  • 자유롭게 쿼리(sql)를 만들고 싶을때, repository를 변형하고 싶은 경우가 있음
    ex) repository.findAll()을 쓰긴 쓰는데 생성시간을 최신 순으로 정렬하고 싶은 경우.
    --> JPA 규칙대로 메소드 명만 잘 만들어주면 알아서 로직을 해결해줌.

  • findByLastnameAndFirstname()
    : Lastname이라는 멤버 변수에 의해서 찾는다
    --> findByLastname
    : Lastname과 Firstname 멤버 변수에 의해서 찾고 싶으면 --> findByLastnameAndFirstname

  • findAllByOrderByModifiedAtDesc()
    findAll : 다 찾아라
    By : ~에 의해서
    OrderBy : 순서대로 정렬 (Order은 뒤에 By한번 더)
    ModifiedAt : 이 기준으로 정렬(수정날짜)
    Desc : 내림차순
    --> 수정 날짜 기준으로 최신순으로 정렬을 해줘.

3-4,3-5 : 복습

3-6~3-10 HTML,CSS,JS,JQuery

id, class

  • id : html 파일을 통틀어 단 하나만 존재 --> #

  • class : 중복 적용 가능 --> .

  • html, css : 정적 (static) 파일

  • json = dictionary

html 공부 링크

(코드 아카데미 html- 영어)
https://www.codecademy.com/learn/learn-html
(생활코딩 html - 한글)
https://opentutorials.org/course/2039

  • 백틱 : 문자열 안에 지정된 변수 값을 넣고 싶은 경우

  • jQuery : 미리 작성된 자바스크립트 함수 모음집
    $('#contents').hide() : id가 contents인 놈을 찾아서 숨겨라

  • input값 가져오기
    $('#post-url').val();

  • input값 넣기
    $('#post-url').val('new text');

  • HTML 없애기
    $('#cards-box').empty();

  • HTML 추가하기
    $('#cards-box').append(`


    <div class="card-body">
        <a href="#" class="card-title">여기 기사 제목이 들어가죠</a>
        <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
        <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
    </div>
    `);

3-12 메모 생성하기

data: JSON.stringify(data),

  • stringify : Javascript 값이나 객체를 JSON문자열로 변환

3-14 메모 조회하기.
GET 할때
response에 콘솔 찍었을 때 modifiedAt가 안나옴.
--> Timestamped폴더로 들어가보면 조회를 하려면 Getter가 필요한데 없음

Timestamped에 꼭 있어야할 lombok

@Getter
@MappedSuperclass
@EntityListeners(AuditingEntityListener.class)

week04application

@EnableJpaAuditing
--> JPA를 사용할 때 꼭 넣어줘야함
--> 데이터 변동이 있으면 JPA가 알아서 반영해줌
--> 생성/수정 시간이 바뀌었을 때 자동으로 업데이트가 됨.(Timestamped)

  • get에서 html구성하는 단계에서 id=1로 되어있는 모든 부분을 ${id}로 수정해야 함.
    -->

과제

타임라인 서비스가 불러오는 메모 목록의 시간을, 조회 시간으로부터 24시간 이내로 설정
힌트1)spring jpa localtime between
힌트2)현재:LocalDateTime.now()
하루전:LocalDateTime.now().minusDays(1)

summary

https://www.notion.so/teamsparta/Spring-3-ab1e9fc209b14c01ade78367b3775461

profile
코딩일지..

0개의 댓글