전체 글 (78) 썸네일형 리스트형 스프링부트 ~19 | REST API를 적용하여 CRUD 구현하기 intro : ∨ 지난시간에 모했나 : 연습용 RestAPI 서버를 통해 http 요청/응답 실습했다. : 그리고 Rest API의 응답 표준인 json 개념도 알았다. 스프링부트 ~ 18 | REST API와 JSON ∨ 참고) 보충! Status code는 크게 5분류된다. 더보기 1xx : informational 2xx : successful | 200(OK), 201(Created) 3xx : redirection 4xx : client error | 404(Not Found) 5xx : sever error | 500(Internal Server Error) 이번 내용: 기존 Article 데이터를 CRUD하기 위한 Rest API 구현하기 먼저 Rest API 주소를 설계한다. 그냥.. 이런.. 스프링부트 ~18 | REST API와 JSON intro : 클라이언트(기기)는 너무나 다양해서 알맞는 뷰를 일일이 설정하기 난감하다. 모든 클라이언트에 통용되는 좋은 방법이 없을까? REST API : 웹서버 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 방식 : 즉 모든 클라이언트가 대응할 수 있게 서버를 설계하는 방식 : 서버의 응답이 모든 기기에서 통용되도록 View(화면)이 아닌 JSON 형태의 data만을 반환(응답) : http를 통해 서버 자원을 다룬다 * 서버의 응답? - 과거 : XML 형식 (사용자 정의형 html 정도) - 현재 : JSON 형식 (JavaScript 방식을 차용한 객체표현식) ㄴ 키, 값 쌍을 중괄호에 담아 표현 ㄴ 즉 형태가 이런식이다 ↓ { key : value, key : value } 이때 va.. 스프링부트 ~17 | SQL 쿼리 로깅 & CRUD 쿼리 실습 recall) JPA의 Repository는 java코드로 작성된 데이터를 Entity 형태로 DB에 전달하여, sql 문법을 사용하는 DB가 데이터를 다룰 수 있도록 돕는다고 했다. 즉 DB가 데이터를 CRUD할 때 sql 쿼리로 CRUD한다. 더보기 recall.. HTTP SQL Create POST insert Read GET select Update PATCH(PUT) update Delete DELETE delete CRUD 쿼리를 확인해보기 앞선 설정들 ● 웹애플리케이션이 실행될 때, 그 sql 쿼리에 대한 로그를 찍어볼 수 있다. application.properties에 JPA 로깅 설정을 하면 된다. cf. 로깅의 레벨은 크게 7단계가 있다. sql 출력시에는 DEBUG 레벨로 로깅한다.. 스프링부트 ~16 | Delete Delete 기능을 추가하는 실습이다. ● article의 상세페이지를 보여주는 뷰페이지에 Delete 버튼을 추가한다. 예를들면↓ 상세페이지의 Delete버튼을 누르면 href="~~" 링크로 연결된다. Delete ● 이제 그 (링크)url요청에 대한 매핑을 컨트롤러 안에 만들어주어야겠다. public class ArticleController { ... // 원래 DeleteMapping을 쓰지만, html의 form태그는 get과 post만 지원한다 // 그래서 일단 get방식을 통해 delete 기능을 구현할 수밖에 없었다 @GetMapping("/articles/{id}/delete") public String delete(@PathVariable Long id, RedirectAttribut.. 스프링부트 ~15 | Update 글씨 이쁘게 쓰는건 넘 어렵다.. 글고 이뿌게 쓰면 넘 오래걸려서.. 힘들다.. 스프링부트 ~13 | 링크와 리다이렉트 + 앗!! : 리다이렉트는 다시 매핑하도록 재요청시키는거고 뷰페이지를 리턴하는 건 작성한 뷰페이지랑 연결하는 거구나..!? 요걸 잠깐 멈칫했네.. ^-^/ 이제 댓다 + 리다이렉트 이전에 수행된 모델데이터는 소멸한다. 스프링부트 ~12 | DB속 모든 Entity findAll하기 음 저번이랑 같은 매커니즘이긴 하다 : https://cherryjubilee.tistory.com/53 저번에는 단 하나의 Entity를 DB에서 가져왔다면 이번에는 findByAll()로 여러 Entity를 List로 묶어 가져온다. 참고 : findByAll()은 원래 Iterable이 반환타입인데 List로 반환타입을 바꾸어 오버라이딩했다. 헉 이게 가능햇? 넵 상속관계면 반환타입 바꿔서 오버라이딩 가능 https://splendidlolli.tistory.com/502 스프링부트 ~11 | DB 데이터 조회해 웹페이지로 확인하기 with JPA 요약 : [ MVC와 JPA와 DB의 상호작용 ] ↓ url의 변수 id를 파라미터로 받아서 @PathVariable ↓ id로 DB의 Entity를 조회하고 xxxRepository.findById(id) recall) JPA의 핵심 도구는 Entity와 Repository다 ↓ Model에 해당 Entity를 등록 model.addAttribute(키, 값(Entry객체) ↓ 그 model은 View에서 사용가능하다. ∨ 추가 메모 : mustache 문법에서 : Model에 등록된 데이터는 {{#article}} 이렇게 샵(#)으로 가져온다. 즉, {{#key}} 하면 모델이 등록된 데이터(객체)가 가져와진다. + {{article.id}} 이렇게도 접근 가능함!! 이때는 샵 안넣어도 됨 + 글고 .. 이전 1 2 3 4 5 6 7 ··· 10 다음