본문 바로가기

Spring/Spring Framework6

@ModelAttribute와 @RequestBody의 차이점 개발 도중에 AJAX로 값을 전송할 일이 있었다 기존에 POST 메소드로 보냈던 AJAX 코드를 수정하여 값을 전송하는 코드를 작성했다 아래와 같이 AJAX로 전송을 시도했다 let testData={ name:"garret", age:30 } $.ajax({ url: "http://localhost:8081/stringifyTest", type: 'GET', data: testData, contentType:"application/json; charset=utf-8" }).done(function(){ alert("성공"); }).fail(function(){ alert("실패"); }); 아래는 컨트롤러 코드이다 @RequestBody 어노테이션으로 값을 받도록 작성했다 @ResponseBody @G.. 2022. 9. 29.
AJAX로 복잡한 JSON 객체 타입을 DTO로 받는 방법 아래와 같이 Primitive Data Type 말고도 List와 같은 타입들을 포함한 데이터를 AJAX를 이용하여 전송받는 경우 @Builder @Data @AllArgsConstructor @NoArgsConstructor public class UserManagementDto { private String personUniqueNumber; private String authority_code; private List authorityCodeList; private Integer group_id; private List groupIdList; private String addModifyReason; private String use_yn; } 아래와 같이 JSON.stringify 함수로 JSON .. 2022. 9. 27.
[Spring 기본개념] Dependency Lookup과 Dependency Injection (Dependency Injection 편) ⓶ Annotation(Context Namespace)을 이용하는 방법 Context Namespace를 이용하기 위해서는 아래와 같이 applicationContext.xml 파일에 추가작성이 필요하다. 1. @Component - @Component Annotation을 이용하면 해당 클래스의 객체를 Bean으로 등록가능 2. @Autowired - 특정 객체의 멤버변수에 의존성 주입 - 생성자나 메소드, 멤버변수 위에 사용가능 - 보통 멤버변수위에 사용 /* 변수 위에 사용 */ @Component("tv1") public class SamsungTV implements TV{ @Autowired private Speaker speaker; } /* 생성자 위에 사용 */ @Component("tv1.. 2022. 2. 7.
[Spring 기본개념] Dependency Lookup과 Dependency Injection (Dependency Injection 편) ① Dependency Injection의 경우, 어떤 객체에 의존성 주입(Dependency Injection)을 해달라고 명세를 했을 때 IoC 컨테이너가 그 명세를 기반해 의존성 주입을 해주는 방식이다. 의존성 주입을 하는 방법에는 Bean 설정파일을 이용하는 방법과 Annotation(Context Namespace)을 이용하는 방법이 있다. Bean 설정파일을 이용하는 방법 1) 생성자를 이용하는 방법 - Default 생성자가 아닌 Overloading된 생성자를 통해 의존성 주입이 가능하다. 생성자의 인자 값으로 객체를 전달할경우 "ref" 속성을, 그 이외의 경우에는 "value" 속성을 이용하여 값을 전달한다. 2) Setter 메소드를 이용하는 방법 3) P Namespace를 이용하는 방.. 2022. 2. 6.