728x90
반응형
✔ 스프링 프로젝트 구조
스프링 프로젝트 구조
src > main > java : 자바 코드
src > main > resources > application.properties : 설정정보
src > main > resources > static : 정적 컨텐츠(html, css, js)
src > main > resources > templates : 동적 템플릿
src > test > java : 테스트용 자바코드 작성
build.gradle : 버전 관리
테이블 정의서
(엔티티정의서)
- 보통 엑셀로 작성하며 테이블 및 컬럼명과 데이터 타입등을 작성해놓은 문서
ERD(Entity Relationship Diagram)
- 개체-관계 모델, 테이블간의 관계를 설명해주는 다이어그램
- DB의 구조를 한눈에 파악할 수 있음
✔ 포트 변경방법 -> application.properties -> server.port (원하는 포트로 변경)
✔ GetContoller
package com.koreait.day2.controller;
import com.koreait.day2.model.Member;
import org.springframework.web.bind.annotation.*;
@RestController// url을 호출할 수 있도록 해주는 기능
@RequestMapping("/api") // http://localgost:8888/api, 어노테이션
public class GetContoller {
// http://localhost:8888/api/getmethod
@RequestMapping(method= RequestMethod.GET, path = "/getmethod" ) // == @GetMapping("/getparameter2")
// get으로 호출해야 들어온다
public String getMethod(){
return "getMethod() 호출!";
}
@RestController : @Controller에 @ResponseBody가 결합 및 Json 형태로 객체 데이터를 반환하고 이를 통해 URL을 호출할 수 있도록 해주는 기능을 대략적으로 의미한다.
@RequestMapping : URL을 요청하면 Controller에서 처리 방식 정의 -> 이 요청을 메서드와 메핑하기 위해 사용
✔ @RequestMapping (method = RequestMethod.GET, path = "/getmethod") 와 @GetMapping("/getmethod") 동일기능
@RequestMapping(method = RequestMethod.GET, path ="getparameter1")
public String getParameter1(@RequestParam String userid, @RequestParam String userpw){
System.out.println("userid : " + userid );
System.out.println("userpw : " + userpw );
return "getParameter1() 호출!";
}
// http://localhost:8888/api/getparameter1?userid=apple&userpw=1234
@GetMapping("/getparameter2")
public String getParameter2(@RequestParam String userid, @RequestParam(name="userpw") String password){
System.out.println("userid : " + userid );
System.out.println("userpw : " + password );
return "getParameter2() 호출!";
}
✔ @RequestParam(가져올 데이터의 이름)[데이타입][가져올 데이터 담을 변수]
@RequestParam(name = "userpw") String password 와 동일
또는 변수를 저장하는 @RequestParam String userid와 같은 방식으로 사용이 가능하다.
✔ 많은 변수를 저장해야 하는 경우
// http://localhost:8888/api/getmultiparameter1?userid=apple&userpw=1234&name=김사과&gender=여자&email=apple@asplle.com&age=20
@GetMapping("getmultiparameter1")
public String getMultiparameter1(
@RequestParam String userid,
@RequestParam String userpw,
@RequestParam String name,
@RequestParam String gender,
@RequestParam String email,
@RequestParam String age
){
System.out.println("userid : " + userid );
System.out.println("userpw : " + userpw );
System.out.println("name : " + name );
System.out.println("gender : " + gender );
System.out.println("email : " + email );
System.out.println("age : " + age );
return "getmultiparameter1() 호출!";
}
위와 같이 일일히 변수들을 지정하기 힘듬
따로 맴버 클래스를 만들어 두어 짧은 코드로 해결할 수 있음
package com.koreait.day2.model;
public class Member {
private String userid;
private String userpw;
private String name;
private String gender;
private String email;
private int age;
public String getUserid() {
return userid;
}
public void setUserid(String userid) {
this.userid = userid;
}
public String getUserpw() {
return userpw;
}
public void setUserpw(String userpw) {
this.userpw = userpw;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Member{" +
"userid='" + userid + '\'' +
", userpw='" + userpw + '\'' +
", name='" + name + '\'' +
", gender='" + gender + '\'' +
", email='" + email + '\'' +
", age=" + age +
'}';
}
}
✔ 기존 생성한 Member이용 -> (Member member) 선언 후 member을 반환 및 출력하면 간단하게 사용이 가능
// http://localhost:8888/api/getmultiparameter2?userid=apple&userpw=1234&name=김사과&gender=여자&email=apple@asplle.com&age=20
@GetMapping("/getmultiparameter2")
public Member getMultiParameter2(Member member){
System.out.println(member);
return member;
}
반응형
'Spring' 카테고리의 다른 글
Spring 데이터 관리(데이터 출력(모든), 삭제, 정렬, 검색, 저장, 불러오기, 존재 확인, 페이지 생성) (0) | 2022.12.09 |
---|---|
Spring Added dependencies 등 간편하게 사용 (0) | 2022.12.08 |
Spring 기본 (create, update, delete) (0) | 2022.12.08 |
Spring PostController (0) | 2022.12.08 |
Spring 시작(start.spring) (0) | 2022.12.06 |