SelfMade-Boot

Jo-Jun_yeong·2024년 8월 27일

build.gradle에서 boot의 버전과 jdk버전을 번경해준다.

내가 혼자 할때는 yml파일로 해보겠다.
뭘 yml이야 얌전히 다시 properties로 변경

  • src/main/java 이하의 패키지에서 spring(java)작성
  • src/main/resources 이하의 패키지
    - templates에 html 파일 생성
    - static에 css, js파일 등을 생성
![](https://velog.velcdn.com/images/idwnsdud1965/post/1a5101a4-b984-4858-8762-917c851b4a99/image.png)

com.exe.self패키지에

  • TestController.java
  • TestService.java
    를 생성

우선 Controller, Service, Repository의 역할들을 정리해보자

Controller, Service, Repository

애플리케이션의 구조를 명확하게 하고, 유지보수성을 높이는데 역할을 한다. 이 세가지 는 주로 MVC아키텍처에 따라 서로 협력하여 동작한다.

Controller(컨트롤러)

사용자로부터 들어오는 요청을 처리하고, 적절한 응답을 반환하는 역할을 담당. 웹에서의 요청을 수신하고, 'Service'를 호출하며 뷰와 연결하거나 API응답을 반환한다. -

주요기능

  • Http 요청 처리: @RequestMapping, @GetMapping, @PostMapping 등의 에너테이션을 사용하여 특정 URL과 메서드를 매핑한다.
  • 요청 데이터를 처리: 요청에 포함된 데이터(@RequestParam, @PathVariable, @RequestBody 등)를 받아 처리한다.
  • 비즈니스 로직 호출: 'Service'계층을 호출해서 필요 비즈니스 로직 처리
  • 응답 생성: 뷰를 반환(ModelAndView)하거나 JSON과 같은 API응답을 반환
  • @Controller
    public class TestController {
    	@RequestMapping("/test")//test가 들어오면 아래의 return으로간다.
    	@ResponseBody	//boot에서 @Controller를 사용할 때 return의 값을 문자로 인식
    	public String test() {
    		return "test";	//web에 'test'를 출력
    	}
    }

    Service(서비스)

    비즈니스 로직을 담당하는 계층
    호직을 구현하고 'Repository'를 통해 DB에 접근하거나 다른서비스를 호출하여 데이터를 처리 한다
  • 비즈니스 로직 처리: 애플리케이션의 기능을 구현한다, 데이터의 검증, 트랜잭션 관리등..
  • 데이터의 접근: 'Repository'를 통해 DB에 접근하여 데이터를 CRUD 작업 수행
  • 트랜잭션 관리: @Transactional 애너테이션을 사용해 트랜잭션 관리
  • test가 오면 Controller의 '@RequestMapping으로 인해
    해당 메소드로 들어오게되고

    Controller
    @RestController
    public class TestController {
    	@RequestMapping("/test")
    	public String test() {
    		TestService ts = new TestService();
    		return ts.test();
    	}
    }

    Service를 호출하여 Service의 값을 web으로 전달한다.

    Service
    @Service
    public class TestService {
    	
    	public String test() {
    		return "TestService - test";
    	}
    	
    }

    profile
    5_hero_like

    0개의 댓글