본문 바로가기

Back-end/Spring Boot + REST API19

Spring boot - blog application (REST API) : ModelMapper ModelMapper map an object from one object to another object ! 1. Add ModelMapper Library dependency Maven Repository: org.modelmapper » modelmapper mvnrepository.com org.modelmapper modelmapper 3.1.0 2. define the ModelMapper bean in our Spring configuration @SpringBootApplication indicates that configuration class that declares one or more bean methods and also triggers a auto configuration and.. 2022. 7. 4.
Spring boot - blog application (REST API) : Comment Creating JPA "Comment" Entity Comment @Data @NoArgsConstructor @AllArgsConstructor @Entity @Table(name = "comments") public class Comment { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String body; private String email; private String name; @ManyToOne(fetch =FetchType.LAZY) @JoinColumn(name="post_id", nullable=false) private Post post; } @ManyToOne(fetch =Fetc.. 2022. 7. 3.
Spring boot - blog application (REST API) : Pagination and Sorting Support 기존 포스트 리스트에서 페이지네이션을 적용시키려고 합니다. 페이지네이션을 사용자가 쉽게 설정할 수 있도록 따로 클래스 작성 AppConstants package com.springboot.blog.utils; public class AppConstants { // page elements public static final String DEFAULT_PAGE_NUMBER = "0"; public static final String DEFAULT_PAGE_SIZE= "10"; public static final String DEFAULT_SORT_BY= "id"; public static final String DEFAULT_SORT_DIRECTION= "ASC"; } payload PostResponse.. 2022. 6. 30.
Spring boot - blog application (REST API) : Post CRUD REST API 를 통해 게시물을 CRUD - Create(생성), Read(읽기), Update(갱신), Delete(삭제) 적용 패키지 구조 application.properties spring.datasource.dbcp2.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/myblog?userSSL=false&serverTimezone=Asia/Seoul&characterEncoding=UTF-8 spring.datasource.username = root spring.datasource.password = root # hibernate properties spring.jpa.prop.. 2022. 6. 29.
Spring boot - blog application (REST API) What is REST? The REST stands for REpresentational State Transfer ➢ State means data ➢ REpresentational means formats (such as XML, JSON, YAML, HTML, etc) ➢ Transfer means carry data between consumer and provider using the HTTP protocol Key points about REST - REpresentational State Transfer: • REST was originally coined by Roy Fielding, who was also the inventor of the HTTP protocol. • A REST A.. 2022. 6. 28.
Spring Boot 컨트롤러에서 데이터 받는 방법(@RequestBody, @RequestParam, @PathVariable) @RequestBody HttpMessageConverter에 의해 Json 포맷의 데이터 java 객체로 자동으로 역직렬화 예시) Controller.java @PostMapping("register") @ResponseBody // return data public String register(@RequestBody Member member) { ... } JSP에서 ajax를 통해 통신 var data={ "name": $("#name").val(), "nickName": $("#nickname").val(), "password": $("#password").val(), "gender": $("#gender").val(), "email":$("#email").val(), "phone":$("#pho.. 2022. 6. 27.
SpringBoot 개념정리 스프링 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크 IoC (Inversion of Control) 제어의 역전 -> 주도권이 스프링에 있다. 객체 생성 및 의존성 설정을 스프링에 위임 IoC컨테이너 객체 생성, 라이프사이클 관리, 의존성 설정을 담당하는 컨테이너 IoC컨테이너를 DI 컨테이너, 스프링 컨테이너라고 부름 @Component 계열 class - 설계도 object - 실체화가 가능한 것 instance - 실체화 된 것 DI (Dependency Injection) 의존성 주입 스프링은 싱글톤 패턴으로 객체 생성 비용 문제 해결 @Autowired MessageConverter 스프링은 메시지컨버터를 가지고 있고 기본값은 json . @ResponseBody -> Buffered.. 2022. 6. 22.