이전에는 sts tool에서 springboot 세팅을 했었다. spring boot의 장점 중 하나는 tool에 상관없이 spring initializr 홈페이지에서도 환경설정이 가능하다는 것이다.
환경설정을 완료했으면 generate를 통해 zip파일로 다운을 받는다. 압축해제를 한 폴더를 import를 하여 sts에서 사용할 수 있게 한다. sts에서 요류가 생길 시에 유용하게 사용이 가능하다.
HelloController 클래스 생성
@RestController
public class HelloController {
@GetMapping("/")
public String hello() {
return "hello. Spring";
}
}
controller Annotation을 사용 후 getMapping을 통해 '/'로 들어오는 것을 처리할 수 있도록한다.
VO클래스 만들기
vo를 만들기 위해서는 lombok을 사용해야하는데 방법은 2가지가 있다
- pom.xml에서 addstarters를 통해 lombok추가(충돌이 날 가능성이 많음)
- 라이브러리에서 가져와 복사 후 붙이기
UserVO 클래스 생성
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserVO {
private String userid;
private String name;
private String gender;
private String city;
}
Demoapplication.java 수정
@SpringBootApplication
@ComponentScan(basePackages = {"com.example"})
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
@SpringBootApplication이 있음에도 @componentScan을 사용하는 이유는 @SpringBootApplication안에 있는 componentscan은 main method가 있는 클래스만 스캔을 하기 때문에 @ComponentScan을 사용하지 않으면 다른 class에 있는 controller를 읽어올 수 없다.
UserController 클래스 생성
@RestController
public class UserController {
@GetMapping("/getUser")
public UserVO getUser() {
UserVO user = new UserVO();
user.setUserid("jimin");
user.setName("한지민");
user.setGender("여");
user.setCity("서울");
return user;
}
}
UserVO가 리턴타입이기때문에 return 될 때에는 jason으로 포팅된다. 따라서 받는 쪽이 jquery로 받고 ajex로 받아온 데이터들을 테이블로 받을 수 있다.
'SpringBoot 코딩' 카테고리의 다른 글
6. Database(NCloud)를 이용한 SpringBoot (BootJdbcDemo) (0) | 2021.11.24 |
---|---|
5. Thymeleaf사용하기 (templatedemo) (0) | 2021.11.24 |
4. 정적페이지를 이용한 SpringBoot Project(spring web) (0) | 2021.11.23 |
2. Spring Starter Project로 SpringBoot만들기(demo) (0) | 2021.11.23 |
1. SpringBoot이용하기 (Springbootdemo) (0) | 2021.11.23 |