WEB/Spring 17

[Spring]Getter 그리고 Setter 생성하고 사용하기

오늘은 멤버변수의 값을 조회하고 값을 할당하기 위한 Spring의 Getter, Setter에 대해 알아보도록 하자. 하지만 알아보기에 앞서 왜 Getter, Setter로 접근을 해야 하는지에 대해 알아야 한다. 📌자바의 접근 제어자 private : 같은 클래스 내에서만 접근 default : 같은 패키지 내에서만 접근 protected : 같은 패키지내 또는 자손 클래스일 경우 접근 public : 제한 없음 Java에서는 위의 4가지 방법으로 접근 제어자를 지정할 수 있다. 접근 제어자는 객체 지향 언어인 Java에서 데이터를 외부로부터 은닉하기 위해 사용한다. 따라서 클래스 내의 멤버 변수는 private으로 선언되고, 이러한 멤버변수에 접근하기 위해 Getter, Setter를 사용하여 각 변..

WEB/Spring 2023.05.16

[Spring]스프링 배치(Batch)란?

📌스프링 배치(Batch)란? 스프링 배치란 대규모 시스템의 운영에 있어 엄청난 양의 데이터를 일괄처리할 수 있도록 도와주는 프레임워크이다. 이름 그대로 스프링 배치(Batch)이기 때문에 Spring과 같은 특성을 띤다. 일별, 월별로 대용량의 데이터를 처리해야 하는 규모 있는 엔터프라이즈 시스템을 운영하기 위해 스프링 배치를 자주 사용한다. 📌스프링 배치(Batch)의 특징 배치는 즉, 일괄처리라는 뜻을 가지고 있기 때문에 지정한 스케줄러에 의해 정해진 시간에 맞춰 수행한다. 로킹/추적, 트랜잭션 관리, 통계 등 처리해야 할 대용량의 데이터의 처리를 위해 필요한 기능을 제공한다. 배치 수행 도 중, 예기치 못한 에러 발생 시 롤백 없이, 그다음 일을 수행한다. 수행에 성공한 Batch는 중복으로 또 ..

WEB/Spring 2023.02.20

[Spring]DI와 Autowired 확실히 알고 사용하기

📌Autowired 확실히 알고 사용하기 Spring으로 개발을 하면서 수도 없이 작성하는 어노테이션 중 하나인 @Autowired이 있다. 사실 정확한 동작 원리를 알고 쓴다기보단 습관처럼 선언하고 사용했기에 이번 포스팅을 통해 정확히 정리하고 넘어가려고 한다. 우선 Spring Framework의 큰 특징인 DI(Dependency Injection)에 대해 간단하게 알아보자. 📌DI(Dependency Injection) DI(Dependency Injection)은 다른 Framework에서는 볼 수 없는 Spring에서 제공하는 의존 관계 주입 기능을 말한다. 즉, 필요할 때마다 객체를 생성해서 사용하는 것이 아닌 미리 생성 후 필요한 부분에 주입하여 사용할 수 있다. 이러한 기능을 사용하면 결..

WEB/Spring 2023.01.31

[Spring]DTO와 VO의 모호한 사용, 확실하게 사용하기

개발을 하면서 데이터를 담을 객체로 DTO와 VO를 사용하게 됩니다. DTO와 VO에 대한 이론적인 차이는 알고 있었지만, 스스로 조차 혼용해서 사용하고 있었고 확실하게 용도에 맞게 사용하는 것이 맞다고 생각하여 이번 포스팅에서 정리하려고 합니다. DTO(Data Transfer Object)란? DTO는 Layer 간 데이터 전송을 목적으로 하는 객체이다. 오로지 getter, setter 메서드만 가지고 있으며, 애초에 전송 목적을 위한 객체이기 때문에 이외에 메서드는 가질 수 없다. public class TestDto { private String name; public String getName() { return name; } public void setName(String name) { th..

WEB/Spring 2023.01.30

[Spring]@Controller VS @RestController

@Controller VS @RestController 전통적인 Spring Framework의 대한 컨트롤로의 대한 선언으로 @Controller를 사용해 왔습니다. 하지만 좀 더 Restful 한 웹 서비스를 기대하면서 Spring 4 이후에 @RestController라는 새로운 어노테이션이 등장하였습니다. 이번 포스팅에서는 이 두 개의 어노테이션에 차이를 알아보도록 하겠습니다. @Controller VS @RestController 비교하기 @Controller @ResponseBody public class Controller { } @RestController public class RestController { } 위의 두 개의 컨트롤러의 기능은 동일합니다. 이와 같이 @RestControl..

WEB/Spring 2023.01.30

[Spring]@RequestBody와 @RequestParam 비교하여 이해하기

2023.01.25 - [WEB/Spring] - [Spring]@RequestParam의 파라미터 사용의 이해 [Spring]@RequestParam의 파라미터 사용의 이해 @RequestParam 클라이언트에서 서버로의 요청 시에 HTTP 요청 파라미터를 컨트롤러 메소드의 파라미터로 전달받을 때 사용된다. 클라이언트가 전달하는 쿼리 변수를 1:1로 매핑해준다. @RequestParam 단 mooonstar.tistory.com 2022.12.26 - [Network] - [Network]REST, REST API [Network]REST, REST API ❓REST란? “Representational State Transfer”의 약자로 자원의 표현으로 구분하여 해당 자원의 정보를 주고받는 방식을 의..

WEB/Spring 2023.01.27

[Spring]@RequestParam의 파라미터 사용의 이해

클라이언트에서 서보로의 요청 시에 HTTP 요청 파라미터를 컨트롤러 메서드의 파라미터로 전달받을 때 사용되는 어노테이션인 @RequestParam에 대해 알아보자. @RequestParam 사용법 @Controller @RequestMapping("/test") public class TestController { @GetMapping("/RequestParam") public String(@RequestParam String param) { return param; } } 위와 같은 방법으로 클라이언트에서 전달받은 파라미터를 param으로 받을 수 있다. 포스트맨을 사용하여 직접 테스트해 보도록 하자. 클라이언트가 보낸 Key = Value 형태의 쿼리 변수에 따라 param에는 사용자가 입력한 par..

WEB/Spring 2023.01.25