상세 컨텐츠

본문 제목

[패스트캠퍼스 수강후기] Java 웹 개발 마스터 올인원 패키지 Online 27회차 미션 - 자바인강

Fast Campus[패스트캠퍼스 후강후기]

by 매일매일 배우는 개발자 2021. 5. 19. 21:36

본문

728x90

수강한 클립명

  • 07.JPA
  • 08.Entity 생성과 Repository
  • 09.JPA를 통한 CRUD 배우기 - 1_1
  • 10. JPA를 통한 CRUD 배우기 - 1_2
  • 11.JPA를 통한 CRUD 배우기 - 2

https://coupa.ng/bZk0eO

 

아침 점심 저녁 매일매일 다른 저칼로리 식단 49일

COUPANG

www.coupang.com

파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음


코딩 비전공자라 학원에서 자바(코딩수업)수업을 수료했지만 실력부족을 느껴 기초부터 다시 해보자라는 생각과 웹개발의 전체적인 방법을 알아보고 싶어 주위에서 괜찮다고 했던 패스트캠퍼스 java/spring 웹 개발 마스터 를 수강하게 되었다.

 

완강을 하여 나만의 웹페이지를 만들고 이 미션수행을 통과해 환급을 받는게 올해 목표이다.

 

미션 일정

  • 미션 기간 : 2/15 (월) ~ 5/15(토)

방법

  • 3클립 이상의 강의영상 수강하기
  • 수강 인증샷과 함께 1000자 이상의 학습 기록을 블로그에 작성하기
  • 미션 페이지에 미션 기록하기

 

 

 


07.JPA (Java Persistent API)

MySql workbench table 생성


ORM (Object Relational Mapping)으로, RDB 데이터 베이스의 정보를 객체지향으로
손쉽게 활용할 수 있도록 도와주는 도구 이다.

Object(자바객체)와 Relation(관계형 데이터베이스) 둘간의 맵핑을 통해서 보다 손쉽게 적용할 수 있는 기술을 제공해준다.

db url 연결



또한 쿼리에 집중 하기 보다는 객체에 집중 함으로써, 조금 더 프로그래밍 적으로 많이 활용 할 수 있다.

gradle


*gradle compile에 주소만 입력하면 자동적으로 업데이트가 되는듯 하다 (STS의 maven이랑 활용도가 비슷한거 같다.)
-> 프로젝트 하는사람의 프로그램 버전, 컴파일등을 맞추기 위함과 동시에 편리성때문에 한다고 알고있다.

 

08.Entity 생성과 Repository

Camel Case : 단어를 표기할 때 첫 문자는 소문자로 시작하며 띄어쓰기 대신(대문자)
로 단어를 구분 
Java의 변수를 선언할 때 camelCase로 선언한다

ex) phoneNumber, createdAt, updatedAt

Snake Case : 단어를 표기할 때 모두 소문자로 표기하며, 띄어쓰기 대신 ( _ ) 로 표기
DB컬럼에 사용

ex) phone_number, created_at, updated_at

API를 정의하기에 따라 다르지만, 주로 API통신 규격에는 구간에서는 Snake Case를 많이 사용 합니다.

JPA에서의 entity

jpa에서의 entity


Entity : JPA에서는 테이블을 자동으로 생성해주는 기능 존재.
DB Table == JPA Entity

JAP의 자동매칭
db와 매칭


Annotation 용도
@Entity 해당 Class가 Entity 임을 명시
@Table 실제 DB테이블의 이름을 명시
@Id Index primary Key를 명시
@Column 실제 DB Column의 이름을 명시
@GeneratedValue Primary key 식별키의 전략 설정

--

JPA는 Entity 및 column은 자동으로 camel case -> DB의 snake_case에 매칭 시켜 줍니다.
<사진참조>

--

Repository

Repository

따로 쿼리문을 작성하지 않아도 기본적인 CRUD를 만들 수 있다.
<사진참조>!!

 

09.JPA를 통한 CRUD 배우기 - 1_1

Autowired 의존성 주입


@Autowired (의존주입) - 스프링이 객체를 직접 관리하겠다

spring.jpa.show-sql=true; <- DB 가 어떻게 실행하는지 보겠다.

create 완성

 

10. JPA를 통한 CRUD 배우기 - 1_2


*JPA의 repository를 쓰면 (상속받으면) 기본적으로 CRUD를 제공해준다.
CRUD하는데 엄청 쉽다.

--

read


READ

findById : 단 한건을 가져오는는 메소드
findAll : 전부 다 가져오는 메소드
ifPresent : selectUser 데이터가 있으면 보겠다

<사진참조 - 사용빙법>

JPA를 활용하면 객체를 통해 DB를 관리할수 있어 
기존에 알고있던 get으로 일일히 불러올 필요가 없어 엄청 코드가 단순해지고 쉬원해진다.

--

update


UPDATE

update에는 id값을 set 하지않는다 (findById에서 이미 가져오므로)
따로 지정하는경우 set하는 값만 계속 바뀐다 

* set값으로 바꿀것만 지정해주면된다

<사진참조 - 사용빙법>

--

 

11.JPA를 통한 CRUD 배우기 - 2

Delete

delete Test 코드 - 1
DeleteMapping 쓰는법


실제 사용방법은 DeleteMapping("/api/user") 이런식으로 매핑해주고
매개변수에 @Requestparam Long id 이런식으로 매개변수를 받아온다.
하지만 여기서는 테스트코드 이기때문에 지금은 동작안하고 @Test 어노테이션을 쓴다.

>Delete도 JPA를 쓰면 코드가 단순해지고 가독성이 좋아서 편리해진다.

<사진 필 참조>

Assert를 사용하여 delete를 표현하는것 - 2




 


https://bit.ly/2YynTUa

 

한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지 Online. | 패스트캠퍼스

Java/Spring 웹 개발, 핵심 25가지 스킬부터 공부하세요. 대기업 출신 7인의 강사진이 모여 만든 Java/Spring 웹 개발 완전체 커리큘럼! 핵심 스킬 25가지 강의부터 250개의 예제, 7개의 프로젝트까지! 비

fastcampus.co.kr



728x90

관련글 더보기