본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


어렵다5

Spring boot Security(스프링부트 시큐리티) 스프링 프레임워크에서 로그인과 관련된 라이브러리 중 가장 많이 사용되는 라이브러리(프레임워크)는 시큐리티(Security)라 할 수 있습니다. xml 파일을 통하여 구현 하거나 또는 Java 코드를 통하여 로그인과 관련된 기능을 정의할 수 있습니다. 주관적인 생각이지만 xml 에서 사용하는 방법 보다는 Java코드를 통하여 만드는 방법이 좀 더 쉬운 것 같습니다. 스프링 부트에서도 시큐리티 설정을 위한 작업 순서를 정하여 봅니다! 1. 라이브러리 추가 2. 시큐리티에서 로그인 후 사용가능한 페이지 설정, 로그인 없이 사용가능한 페이지 설정 3. 시큐리티가 사용할 가치 있는 객체(Value of Object) 설정 4. 시큐리티가 데이터베이스에 연결하여 사용할 서비스 설정 위 4가지 단계에 맞추어 작성하여.. 2022. 6. 22.
#2. 타입스크립트 제네릭, 타입(Typescript generics, type) 타입스크립트(Typescript) 공부를 처음부터 다시 하면서 개념과 원리를 정리하고 있습니다. 타입스크립트(typescript)에서의 꽃은 제네릭과 타입 입니다. 제네릭은(generic) 자바(Java)라는 프로그래밍언어를 많이 접해본 사람 이라면 쉽게 다가갈 수 있는 영역 입니다. 데이터의 자료형을 지정해 주는 방법으로 지정된 이외의 다른 데이터가 들어가지 못하게 할 수 있습니다. 1. 제네릭(generic) let array = [] //오직 숫자만 들어가야되는 배열이라 가정 합니다. array.push(123) //정상적인 입력1 array.push(456) //정상적인 입력2 array.push('hello') //어...이건 들어가면 안되는데...; 위 내용처럼 어떠한 숫자형식의 데이터만 필요.. 2022. 5. 19.
spring webflux 6 (웹플럭스 적용기, Mysql) 웹플럭스에서는 논블럭킹 방식으로 데이터베이스에 접근한다. 현재까지 연결하여 지원가능한 관계형 데이터베이스는 5개이다. (2020.03 기준) 1. Postgres (io.r2dbc:r2dbc-postgresql) 2. H2 (io.r2dbc:r2dbc-h2) 3. Microsoft SQL Server (io.r2dbc:r2dbc-mssql) 4. MySQL (com.github.mirromutth:r2dbc-mysql) 5. jasync-sql MySQL (com.github.jasync-sql:jasync-r2dbc-mysql) 나머지 데이터 베이스는 지원하더라도 Blocking 방식으로 지원되므로...위 언급한 5개의 데이터 베이스를 제외하고는 아직 사용하지 않는 것이 좋다고 한다. 왜나하면, 웹플럭.. 2020. 3. 30.
spring webflux 4 (웹플럭스 적용기, Mono와 Flux) 웹플럭스는 리엑터 객체인 Mono와 Flux 클래스를 얼마나 잘 다룰줄 아는지가 가장 중요한 것 같다. 웹플럭스를 조금 더 파보기 위해서는 저 Mono와 Flux에 대해서 친숙해질 필요가 있다. 새로 프로젝트를 만들자. 그냥 Maven 프로젝트나 Gradle 프로젝트를 만든 다음에 웹플럭스 라이브러리를 추가하자. 버전은 본인의 구성에 맞게 설정하자~ * 메이븐 org.springframework.boot spring-boot-starter-webflux * Gradle compile group: 'org.springframework.boot', name: 'spring-boot-starter-webflux', version: '2.2.5.RELEASE' Mono와 Flux는 둘다 하는 행위가 비슷하다. .. 2020. 3. 18.
spring webflux 3 (웹플럭스 적용기, 함수형과 반응형) 웹플럭스는 대부분의 코딩 방식을 람다 또는 함수형으로 표현하고 있다. 메소드형태도 대부분 체이닝 방식을 써서 작업 할 때 메소드명이 차레대로 이어지는 걸 보면 해당 코드의 이해가 쉬워진다. 그러면, 전에 만들었던 RoutsConfig 클래스에 매소드를 한개 추가하여보자. 새로 만들 메소드 이름은 requestGetParam이라는 메소드이다. @Bean public RouterFunction requestGetParam() { RequestPredicate predicate = RequestPredicates.GET("/request").and(RequestPredicates.accept(MediaType.TEXT_PLAIN)); //1. Request + Predicate(요청 + ~이다) => 사용자의.. 2020. 3. 12.