Java/Spring
-
@Configuration + @Bean @Configuration + @Bean 어노테이션을 사용하는 이유는 아래와 같다. 라이브러리, 내부 클래스 등 개발자가 직접 제어 불가능한 클래스를 Bean 등록할때 사용한다. 다형성을 활용하여 여러 구현체를 Bean 등록 해야할때 사용한다. @Configuration 어노테이션이 존재 하는곳에 @Bean 어노테이션을 사용해 여러개의 구현체를 Spring Bean 으로 등록할 수 있다. @Bean 어노테이션은 반드시 @Configuration 어노테이션과 함께 사용해야 한다고 하는데 이유는 아래와 같다. @Configuration 과 @Bean 어노테이션을 함께 사용해야 하는 이유 @Configuration 과 @Bean 어노테이션을 함께 쓰라고 강조하는 이유는..
@Bean+@Configuration, @Component 어노테이션@Configuration + @Bean @Configuration + @Bean 어노테이션을 사용하는 이유는 아래와 같다. 라이브러리, 내부 클래스 등 개발자가 직접 제어 불가능한 클래스를 Bean 등록할때 사용한다. 다형성을 활용하여 여러 구현체를 Bean 등록 해야할때 사용한다. @Configuration 어노테이션이 존재 하는곳에 @Bean 어노테이션을 사용해 여러개의 구현체를 Spring Bean 으로 등록할 수 있다. @Bean 어노테이션은 반드시 @Configuration 어노테이션과 함께 사용해야 한다고 하는데 이유는 아래와 같다. @Configuration 과 @Bean 어노테이션을 함께 사용해야 하는 이유 @Configuration 과 @Bean 어노테이션을 함께 쓰라고 강조하는 이유는..
2021.10.18 -
Filter(Spring Security) 와 Interceptor의 차이 * Filter : Dispatcher Servlet 앞단에서 정보를 처리하고, Interceptor는 Dispatcher Servlet에서 Controller로 가기전 요청을 가로채서 정보를 처리한다. - 기능적인 측면으론 완전히 다른 개념이다. spring security (Dispatcher Servlet 구간으로 진입전 Filter 구간에서 처리) : 인증,권한,보안 기능을 제공하는 Spring의 하위 프레임워크 : 스프링 기반의 어플리케이션 보안을 담당하는 프레임워크이다. * 사용해야할 어노테이션 @Configuration : Spring IOC 컨테이너(Bean을 관리하는 컨테이너)에게 해당 클래스는 Bean..
Spring SecurityFilter(Spring Security) 와 Interceptor의 차이 * Filter : Dispatcher Servlet 앞단에서 정보를 처리하고, Interceptor는 Dispatcher Servlet에서 Controller로 가기전 요청을 가로채서 정보를 처리한다. - 기능적인 측면으론 완전히 다른 개념이다. spring security (Dispatcher Servlet 구간으로 진입전 Filter 구간에서 처리) : 인증,권한,보안 기능을 제공하는 Spring의 하위 프레임워크 : 스프링 기반의 어플리케이션 보안을 담당하는 프레임워크이다. * 사용해야할 어노테이션 @Configuration : Spring IOC 컨테이너(Bean을 관리하는 컨테이너)에게 해당 클래스는 Bean..
2021.08.28 -
JAVA 파일(.class)에는 필드(Field), 생성자(constructor), 메소드(method) 존재 class Example_Class { int filed ; //필드 Example_Class() { } //생성자 Example_Class(int a) {} //생성자 Example_Class(int a, String b) {} //생성자 public void example_method { //메소드 } } * 필드(Field) : 필드는 객체의 고유 데이터, 상태 정보 등을 저장하는 곳이며, 변수와 비슷하게 사용된다. ※ 변수는 생성자(Constructor)와 메소드(Method) 내에서만 사용되고 생성자와 메소드가 실행 종료되면 자동 소멸한다. 하지만 필드는 생성자와 메소드 전체..
필드(Field), 생성자(Contructor), 메소드(Method)JAVA 파일(.class)에는 필드(Field), 생성자(constructor), 메소드(method) 존재 class Example_Class { int filed ; //필드 Example_Class() { } //생성자 Example_Class(int a) {} //생성자 Example_Class(int a, String b) {} //생성자 public void example_method { //메소드 } } * 필드(Field) : 필드는 객체의 고유 데이터, 상태 정보 등을 저장하는 곳이며, 변수와 비슷하게 사용된다. ※ 변수는 생성자(Constructor)와 메소드(Method) 내에서만 사용되고 생성자와 메소드가 실행 종료되면 자동 소멸한다. 하지만 필드는 생성자와 메소드 전체..
2021.08.28 -
@RequestHeader : 스프링에서 요청 헤더를 받기 위해 사용하는 어노테이션 @GetMapping(value="/taskList/{currentPage}/{selectCount}") public Page taskListController( @PathVariable("currentPage") int currentPage, @PathVariable("selectCount") int selectCount, @RequestHeader Map request) { Iterator keys = request.keySet().iterator(); while(keys.hasNext()) { String key = keys.next(); System.out.println( String.format("키 : %s..
@RequestHeader@RequestHeader : 스프링에서 요청 헤더를 받기 위해 사용하는 어노테이션 @GetMapping(value="/taskList/{currentPage}/{selectCount}") public Page taskListController( @PathVariable("currentPage") int currentPage, @PathVariable("selectCount") int selectCount, @RequestHeader Map request) { Iterator keys = request.keySet().iterator(); while(keys.hasNext()) { String key = keys.next(); System.out.println( String.format("키 : %s..
2021.08.28 -
Controller @PostMapping(value="/list/file/download") public ResponseEntity licenseListFileDownloadController(@RequestBody List htlvo) { Resource resource = es.equipmentListFileDownload(htlvo); //서비스에서 Resource 만들어 리턴 HttpHeaders header = new HttpHeaders(); String mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; header.setCacheControl("no-cache"); header.setContentT..
특정 List 정보 .xlsx 파일 다운로드Controller @PostMapping(value="/list/file/download") public ResponseEntity licenseListFileDownloadController(@RequestBody List htlvo) { Resource resource = es.equipmentListFileDownload(htlvo); //서비스에서 Resource 만들어 리턴 HttpHeaders header = new HttpHeaders(); String mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; header.setCacheControl("no-cache"); header.setContentT..
2021.08.28 -
- Filter 와 Interceptor의 차이 * Filter : Dispatcher Servlet 앞단에서 정보를 처리하고, Interceptor는 Dispatcher Servlet에서 Controller로 가기전 요청을 가로채서 정보를 처리한다. - 기능적인 측면으론 완전히 다른 개념이다. * Interceptor : 특정 URI로 요청했을 때 컨트롤러로 가는 요청들을 가로챈다. : Dispatcher Servlet 이 요청을 받아 HandlerMapping을 통해 Controller로 보내는데 Controller로 가기전 Interceptor가 요청을 가로채어 정보를 처리한 후 Controller로 보내진다. interceptor/JwtInterceptor.java package com..
HandlerInterceptor- Filter 와 Interceptor의 차이 * Filter : Dispatcher Servlet 앞단에서 정보를 처리하고, Interceptor는 Dispatcher Servlet에서 Controller로 가기전 요청을 가로채서 정보를 처리한다. - 기능적인 측면으론 완전히 다른 개념이다. * Interceptor : 특정 URI로 요청했을 때 컨트롤러로 가는 요청들을 가로챈다. : Dispatcher Servlet 이 요청을 받아 HandlerMapping을 통해 Controller로 보내는데 Controller로 가기전 Interceptor가 요청을 가로채어 정보를 처리한 후 Controller로 보내진다. interceptor/JwtInterceptor.java package com..
2021.08.28