개인 과제 : 스프링 부트로 로그인 기능이 없는 나만의 항해 블로그 만들기
1. 전체 게시글 목록 조회 페이지
팀 과제 :
환경 설정 -> 개인과제 훑기 -> 강의 자료를 볼 것
개인 과제를
팀 과제
JPA는 무엇인가요?
이번 주 배울 내용 확인하기
- 웹의 기본 개념
- 자바(Java) 기본 문법
- 클래스(Class), 메소드(Method), 멤버(Member)
- 스프링 작동 방법
- 컨트롤러(Controller)
- 그레이들(Gradle)
임포트
- List 처럼, 미리 작성된 코드를 불러오는 것을 "임포트(import)" 라고 합니다.
- 자바는 기본적인 임포트 파일들이 있는데, 임포트 단축키는 다음과 같습니다.
- 윈도우: Alt
+ Enter
메소드
// 파라미터 X, 반환값 X
public void simplePrint() {
System.out.println("파라미터도 없고, 반환값도 없어요!");
}
// 파라미터 O, 반환값 X
public void simpleSum(int num1, int num2) {
System.out.println("num1 :" + num1 + ", num2: " + num2);
}
// 파라미터 X, 반환값 O
public int simpleReturn() {
return 3;
}
// 파라미터 O, 반환값 O
public int sum(int num1, int num2) {
return num1 + num2;
}
클래스
package com.sparta.week01.prac;
public class Course {
// title, tutor, days 가 Course 라는 맥락 아래에서 의도가 분명히 드러나죠!
public String title;
public String tutor;
public int days;
//기본 생성자
public Course(){ //생성자는 자료형(int, String 등)을 넣지 않는다
}
// *자바에서 자동으로 기본 생성자가 없을 떄 만들어주지만 생성자를 하나라도
// 추가를 해준다면 기본 생성자가 없는 것과도 같기 때문에 기본생성자를 항상 같이
// 만들어줘야한다.
//생성자
public Course(String title, String tutor, int days){
this.title = title;
this.tutor = tutor;
this.days = days;
}
}
생성자
public class Course {
public String title;
public String tutor;
public int days;
// 이렇게 아무런 파라미터가 없는 생성자를 기본생성자 라고 부릅니다.
package com.sparta.week01.prac;
import java.util.ArrayList;
import java.util.List;
public class prac {
public static void main(String[] args) {
String title = "웹개발의 봄, Spring";
String tuthor = "남병권";
int days = 35;
Course course = new Course(title, tuthor,days);
System.out.println(course.title);
System.out.println(course.tutor);
}
}
}
}
👉 위와 같이 "클래스명과 똑같은 이름을 가진 메소드를 "**생성자**"라고 부릅니다.
클래스 변수를 새롭게 만들 때 사용되는 녀석인데요, 아래와 같이 사용할 수 있습니다.
Private / Public
👉 클래스의 모든 정보를 손쉽게 바꿀 수 있으면 안되겠죠~! 왜냐하면 클래스는 고객의 비밀번호/결제정보와 같이 민감한 정보들도 담고 있기 때문입니다.그래서 자바의 클래스는, 밖에 드러내도 되는 것들을 public, 함부로 바꾸면 안되는 것들을 private 으로 구분해서 나타낸답니다. 😎
함부로 바꾸면 안되는 private 클래스를 수정하고 가져오기 위해선
Getter / Setter 필요합니다.
public void setTitle(String title){
//public : 밖에서 호출이 되야한다.
//void : 돌려주는게 없다.
//String title : 재료를 받는다.
this.title = title;
}
public void setTutor(String tutor){
this.tutor = tutor;
}
public void setDays(int days){
this.days = days;
}
*Getter
//Getter
public String getTitle() {
return this.title;
}
public String getTutor(){
return this.tutor;
}
public int getDays(){
return this.days;
}
RestController
웹서비스의 작동방식
서버 응답 두가지
1) 데이터만 보내기
2) html css js 다 보내기
중 데이터만 보내려면 RestController 을 사용한다.
Rest
- 서버의 응답이 JSON 형식임을 나타냅니다.
- HTML, CSS 등을 주고받을 때는 Rest 를 붙이지 않습니다.