scss 커스텀 SVG 사용하기 커스텀 SVG 파일 내용을 base64로 인코딩 후 scss에 다음 키워드를 사용하여 사용할 수 있다. $hs-icon-search-small: '소스내용' 8.75rem 8.75rem; .test{ @include inline-svg($hs-icon-search-small); } @mixin inline-svg($name) { background-image: url(nth($name, 1)); width: nth($name, 2); height: nth($name, 3); } Frontend 4년 전
스프링 배치 Job -> Step ->Tasklet 단계구조 Spring Batch의 methodInvokingTaskletAdapter 으로 빈을 생성 targetObject 설정 targetMethod 설정 해당 빈을 Tasklet으로 사용 Step별로 Tasklet 설정 JobParameter로 배치 실행 파라미터 전달 Backend/Spring 4년 전
Inner Class Inner Class의 경우 멤버변수가 private 접근 제어자임에도 InnerClass를 가지고 있는 Class는 해당 클래스의 멤버변수에 public하게 접근이 가능하다. public class TestA{ private TestB b; static public class TestB{ private String member; } public String get() { return this.b.member; } } Programming/Java 4년 전
MVVM 구조 MVVM Model ViewModel View Vue,js Vue.js의 경우 태그들이 View를 구성하고 있으며 VueComponent가 ViewModel을 담당한다. VueComponent에서 서버와 호출하여 생성하는 데이터들이 Model 영역에 속하게 된다. 이렇게 영역을 분리하면 View 영역 수정이나, Model 영역 수정이 발생하여도 의존성이 줄어들게 된다. Frontend 4년 전
@RequestBody, @RequestParam 차이점 @RequestBody 객체 생성 : 가능 각 변수별로 데이터 저장 : 불가능 @RequestParam 객체 생성 : 불가능 각 변수별로 데이터 저장 : 가능 Backend/Spring 4년 전
static method 기준 프레임워크를 개발하다보면 Utility Class를 만들게 된다. Utility Class의 static 멤버변수와 함수가 선언된다. Utility Class를 만드는 경우와 인스턴스화하여 사용하는 경우에 대한 기준이 필요할 듯 하다. Utility Class 기준 단순히 Input Parameter을 받고 Output을 리턴해주는 함수일 경우. Utility Class의 경우 Dependency가 없으며 상속, 구현을 통한 확장도 사용하지 않을 때. 전역 접근이기 때문에 데이터 읽기만 사용가능하다. Programming/Java 4년 전
Vue.js 어플리케이션 확장하기 NuxtAppProperties -> Module, NuxtAppPropertis 기반으로 builderContext을 사용하여 Nuxt 구성을 변경해준다. (Plugin도 별도 등록) -> Plugin은 context에 접근하여 Object 주입을 할 수 있다. Nuxt 멀티 프로젝트 확장 Base Module 등록 -> 각 프로젝트에 build/module.ts import하여 Module 호출 -> 프로젝트 별 Nuxt 구성 변경 Module, Plugin http://guide.ustraframework.kro.kr/ref-doc/03/308z0JLMBoNf9Rqd2H2g Module의 경우 NuxtApp을 빌드할 때 필요한 설정정보를 변경할 수 있으며 Plugin의 경우 Build 후 conte.. Frontend/Vue.js 4년 전
Spring Security Spring Securit 환경 설정 요청에 따른 인증정보를 Filter를 통해서 가져오고 해당 인증을 가지고 권한체크를 진행한다. 권한 체크 후 발생한 예외는 AccessDeniedHandler, AuthenticationEntryPoint를 가지고 처리한다. 인증 처리 필터 등록 http .authorizeRequests() .and() .addFilterBefore(new AuthenticationRequestFilter(authenticationManager), UsernamePasswordAuthenticationFilter.class);권한 체크 대상 설정 WebSecurityConfigurerAdapter을 상속받아 WebSecurity, HttpSecurity를 설정한다. WebSecuri.. Backend/Spring 4년 전
Vuetify Vuetify는 UI Framework로 Vue Component를 제공한다. 컴포넌트 확장을 위해서 제공하는 컴포넌트들을 상속하여 사용하고 plugin을 통해서 전역으로 컴포넌트를 등록한다. plugin은 order순서로 등록 되게 되는데 상속한 컴포넌트를 vuetify보다 후순위에 배치시켜 전역을 override 시켜야 한다. 하지만 treeShaking 기능이 켜져 있으면 오버라이드가 되지 않는다. treeShaking의 경우 파일의 사이즈를 줄이기 위해서 사용하지 않는 소스들과 중복된 소스를 제거하는 기능을 제공한다. 아마 이 기능에서 전역 컴포넌트 override 소스를 제거하는 듯 하다. Frontend/Vue.js 4년 전