1. Axios란 Javascript의 HTTP 클라이언트 라이브러리로 대부분 브라우저와 Node.js 환경에서 모두 사용한다. axios는 비동기 HTTP 요청을 보내고 응답을 처리하는 기능을 제공하여 웹 애플리케이션에서 서버와의 데이터 통신을 간편하게 처리할 수 있도록 도와준다. Spring Framework에서 AJAX를 사용한 것과 비슷하다. 2. Axios 사용법 https://axios-http.com/kr/docs/intro 시작하기 | Axios Docs 시작하기 브라우저와 node.js에서 사용할 수 있는 Promise 기반 HTTP 클라이언트 라이브러리 Axios란? Axios는 node.js와 브라우저를 위한 Promise 기반 HTTP 클라이언트 입니다. 그것은 동형 입니다(동일한 ..
항상 bootstrap을 사용할 때 head 태그 안에 link나 script로 태그를 항상 붙여놓게 됬는데 이것도 incloud처럼 태그 하나로 묶어서 쓸 수 있다. Title componant 폴더에 config.html 파일을 만들어서 위와 같이 코드를 저장했다. main.css를 여러군데에서 사용할 때 유용할 수 있다. 위와 같이 작성하기만 해도 config.html 안에 작성했던 내용들이 작성되게 된다.
테스트 코드 테스트 코드를 작성하는 이유 코드의 동작 검증 유지 보수 및 리팩토링 기능 추가 및 확장 문서화 신뢰성 확보 import static org.assertj.core.api.Assertions.*; Assertions 클래스가 가지고 있는 모든 Static 메서드를 가져오겠다. 도서 등록 테스트 1. 신규 도서 데이터 생성 2. save 메서드 호출해서 저장 처리 3. 저장한 데이터의 id값을 가져오고 해당 id로 db에서 조회를 한 뒤 1번에서 만든 객체의 책제목 값과 3번에서 조회한 객체의 책 제목 값이 일치하는지를 판단하여 4. 일치하면 테스트 성공 , 일치하지 않으면 테스트 실패 를 해본다. private BookDTO newBook() { BookDTO bookDTO = new Boo..
1. Create 책 제목 책 저자 책 가격 저장할 데이터 받기 @PostMapping("/save") public String save(@ModelAttribute BookDTO bookDTO) { bookService.save(bookDTO); return "/index"; } 컨트롤러에서 서비스로 전송 public void save(BookDTO bookDTO) { BookEntity bookEntity = BookEntity.toSaveEntity(bookDTO); bookRepository.save(bookEntity); } Entity로 전송되어야 하기 때문에 DTO를 Entity로 변환하는 과정이 추가된다. public static BookDTO toListEntity(BookEntity b..
책 등록 책 목록 인덱스에서 책 등록과 책 목록 페이지를 만들었다. 책 제목 책 저자 책 가격 input 태그로 입력받고 DTO에 맞춰 name을 설정후 form 태그로 전송한다. package com.example.book.DTO; import lombok.Data; @Data public class BookDTO { private Long id; private String book_name; private String book_author; private int book_price; } package com.example.book.Entity; import com.example.book.DTO.BookDTO; import lombok.Data; import javax.persistence.*; @En..
1. TDD(Test Driven Development) Spring Data JPA(Java Persistence API) a. DataBase 테이블을 자바 객체처럼 사용 b. 테이블의 역할을 하는 Entity 클래스 사용 c. save() , findById() , findAll() , deleteById() 등등 정해진 메서드이름을 사용 2. 이름 수정 application.yml로 확장자 변경 application.yml의 내용 추가 들여쓰기가 매우 중요하기 때문에 잘 확인해야 한다. 3. Entity class 1. Entity를 테이블처럼 사용 패키지를 하나추가하고 Entity class를 생성 2. Primary key 지정 package com.example.demo_2.entity; i..
1. Project 생성하기 새 프로젝트를 Generators에서 Spring initializr를 선택한다 Name은 프로젝트 이름이자 폴더 이름으로 생성된다. Create Git Repository를 선택하면 Git까지 생성된다. Group에서 패키지 2단계까지 설정되고 Artifact에서 3단계 패키지를 작성하면 기본적으로 Package name에 작성된다. JDK는 Amazon Corretto version 11.0.18을 사용했다. Packaging은 Jar를 선택한다. next를 선택해서 Dependencies를 선택하는 창으로 넘어온다. Spring boot 버전을 2.7.12로 설정 ( 중요 ) dependencies 중에선 Lombok , Spring Web , Thymeleaf를 선택한..
1. Spring framework와 Spring Boot의 차이점 Spring Framework Spring Boot view template JSP Thymeleaf(*.html) DataBase mybatis Spring Data JPA Build & Dependency pom.xml(maven) build.gradle(maven) TomCat 별도 설치 및 적용 내장 TomCat 사용 배포 파일 .war .jar Http request api query string ((ex) /board?id=10) rest api ((ex) /board/10) DI(Dependency Injection) 필드주입(@Autowired) 생성자 주입 Test jUnit , Postman Spring Framewor..