1. JSON 개요 (JavaScript Object Notation) 간단한 형식을 갖는 문자열로 데이터 교환에 주로 사용. 특징 객체 표현: 중괄호 사용. {이름:값} 문자열: "나 '을 사용해 표현. 숫자: 10진수 표기법 (1.5)이나 지수 표기법(1.07e2
@PostMapping: 주어진 URI 표현식과 일치하는 HTTP POST 요청을 처리.서버로 데이터를 전송.POST 요청은 대부분 HTML 야식을 통해 서버에 전송.기존 리소스에 주석 달기게시판, 뉴스, 그룹, 메일링 리스트나 이와 유사한 시스템에 글 올리기회원가입으
주도권을 spring이 갖고 있다. (메모리를 개발자가 아는 spring이 관리한다)class: 설계도object: 실체화가 가능한 것instance: 실체화가 된 것코드로 object를 실체와 시키는 방법: object를 직접 new를 해서 Heap이라는 공간에 띄운
스프링 자체가 기본 필터들 갖고 있으며 직접 필터 생성이 가능하다. 주로 Spring Framework에서는 request/response의 logging 용도로 활용하거나 인증 관련 Logic들을 해당 Filter에서 처리. 이를 선/후 처리하여 Service bus
프로젝트 생성하기 https://start.spring.io/ 에서 spring project를 생성하고 다운 받아 압축을 푼다. Intellij에서 폴더를 열고, File에서 설정 변경 1) File - Setting - Gradle 설정 변경 2) File -
spring boot를 사용하여 특정 조건을 만족하는 데이터를 mysql에서 불러오기 @GetMapping@PathVariable ("page")int page: url의 /recommend/{page}/{perPage} 경로에서 페이지 지정@RequestParam
@Entity: 자동으로 mysql에 테이블을 생성한다@Id: primary key라는 것을 알려준다@GeneratedValue: 프로젝트에 연결된 DB의 numbering 전략에 따른다@Column(nullable=false, length=30): null이 불가능하
DatabaseConfig 코드 User Model 코드 application.yml build.gradle 코드
1. 프로젝트 실행해보기 intellij에서 기본 환경 setting 후 실행 intellij spring 환경 setting IoC (제어의 역전) "개발자가 아닌 스프링이 직접 new를 해준다" spring이 수 많은 object들을 class로 만들어 놨는데
GET: 데이터 받기 (select)POST: 데이터 추가 (insert)PUT: 데이터 수정 (update)DELETE: 데이터 삭제 (delete)네트워크 프로토콜: 클라이언트와 서버간의 네트워크 통신이 어떻게 이루어지는지에 대한 개념서버가 클라이언트의 세션 상태
GET: 데이터 받기 (select)POST: 데이터 추가 (insert)PUT: 데이터 수정 (update)DELETE: 데이터 삭제 (delete)RequestParam 어노테이션을 사용한다.url: http://localhost:8080/http/get?
model 코드 User 테이블 Reply 테이블 Board 테이블 DB conncection config model 폴더랑 같은 level에 존재하는 config 폴더 아래 DetabaseConfig.java 파일 생성 build.gradle 파일
join 기능을하는 controller 생성하기통신: POSTBody에 key와 value를 적어서 넘긴다.join1 postman통신: POSTUser 모델을 사용해서 데이터 넘기기.Body에 key와 value를 적어서 넘긴다."userRepository.save(
@PathVariable과 {}를 사용한다.요청: 웹브라우저User 객체: 자바 오브젝트변환 (웹브라우저가 이해 가능한 데이터 -> json (Gson 라이브러리)스프링부트 = MessageConverter라는 것이 응답시에 자동 작동만약에 자바 오브젝트를 리턴하게 되
List를 사용해서 User 테이블에 있는 data 전체 불러오기.findAll 함수를 사용.@PageableDefault 사용쿼리를 사용해 page 번호 입력: ?page=1위 코드 정리 ver과거에 공공 api를 활용하여 불러온 data paging한 방법코드 gi
@PutMapping을 사용하여 수정할 사용자 정보의 내용을 입력 받고 @Transactional을 사용해 수정 정보를 db에 반영하기
@DeleteMapping 사용한 후EmptyResultDataAccessException나 Exception을 사용하여 예외 처리
Spring에서는 Spring Security라는 별도 프레임워크에서 인증 (Authentication)과 안가 (Authorization) 기능을 제공한다.인증 (Authentication): 사용자 본인 확인안가 (Authorization): 인증된 사용자가 요청한
토큰 기반 인증 시스템은 클라이언트가 서버에 접속을 하면 서버에서 해당 클라이언트에게 인증되었다는 의미로 '토큰'을 부여유일한 큰을 발급받은 클라이언트는 또 다시 서버에 요청을 보낼 때 요청 헤더에 토큰을 심어서 보낸다.서버에서는 클라이언트로부터 받은 토큰을 서버에서
application.properties에 "itemImgLocation=image/"로 경로 지정import lombok.Value 사용하였다.