분류 전체보기 (10) 썸네일형 리스트형 모믈렛 개인 정보 처리 방침 ('모믈렛'이하 '모믈렛')은(는) 개인정보보호법에 따라 이용자의 개인정보 보호 및 권익을 보호하고 개인정보와 관련한 이용자의 고충을 원활하게 처리할 수 있도록 다음과 같은 처리방침을 두고 있습니다. ('모믈렛') 은(는) 회사는 개인정보처리방침을 개정하는 경우 웹사이트 공지사항(또는 개별공지)을 통하여 공지할 것입니다. ○ 본 방침은부터 2020년 10월 8일부터 시행됩니다.1. 개인정보의 처리 목적 ('모믈렛'이하 '모믈렛')은(는) 개인정보를 다음의 목적을 위해 처리합니다. 처리한 개인정보는 다음의 목적이외의 용도로는 사용되지 않으며 이용 목적이 변경될 시에는 사전동의를 구할 예정입니다. 가. 홈페이지 회원가입 및 관리 회원 가입의사 확인, 회원제 서비스 제공에 따른 본인 식별·인증 등을 목적으로 .. Authentication There is no anchor tag in React Native, so we can't write , instead we have to use Linking.openURL. 현재 우리 프로젝트의 개발 사양은 프론트 : 리액트 네이티브 , 백엔드 : 자바 스프링 으로 구성되어 있다. 구글 , 네이버 등 소셜 로그인을 Oauth 를 통해 구현하는 중에 생긴 어려움에 대해 해결한 과정을 쓰고자 한다! 크게 로그인의 로직은 다음과 같았다. 1. 앱에서 서버의 특정 url 로 웹을 연다. 2. 웹을 열게 되면 구글 로그인 화면이 나오게 된다. 3. 로그인이 정상적으로 완료되면 서버에서 JWT을 가지는 주소를 redirect 시켜준다. 4. 해당 url 에서 jwt 토큰을 가지고와 서버와 인증을 진행한다. 위.. Spring Boot Data Jpa 사용자 정의 Repository 만들기 스프링 데이터 JPA 리포지토리는 인터페이스만 정의하고 구현을 스프링이 하기 때문에 인터페이스의 직접 메서드를 구현하고 싶을 때 스프링 데이터 JPA가 제공하는 인터페이스의 많은 기능을 직접 구현해야한다. 따라서 사용자 정의 리포지토리를 사용해 스프링 데이터 JPA 리포지토리 인터페이스에서 querydsl을 사용해보자 PersonRepository public interface PersonRepository extends JpaRepository { } 1. PersonRepositoryCustom 인터페이스를 만든다 public interface PersonRepositoryCustom { List findAllPersonCustom(); } 2. PersonRepositoryImpl을 만들고 Pers.. querydsl 적용하기 1. build.gradle에 plugin 추가 plugins { ... //querydsl 추가 id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" ... } 2. dependency 추가하기 dependencies { ... //querydsl 추가 implementation 'com.querydsl:querydsl-jpa' ... } 3. build.gradle에 아래 코드 추가 //querydsl 추가 시작 def querydslDir = "$buildDir/generated/querydsl" querydsl { jpa = true querydslSourcesDir = querydslDir } sourceSets { main.java.srcDir q.. Spring 외부 설정 파일 사용할 수 있는 외부 설정 properties YAML 환경 변수 커맨드 라인 아규먼트 프로퍼티 우선 순위 유저 홈 디렉토리에 있는 spring-boot-dev-tools.properties 테스트에 있는 @TestPropertySource @SpringBootTest 애노테이션의 properties 애트리뷰트 커맨드 라인 아규먼트 SPRING_APPLICATION_JSON (환경 변수 또는 시스템 프로티) 에 들어있는 프로퍼티 ServletConfig 파라미터 ServletContext 파라미터 java:comp/env JNDI 애트리뷰트 System.getProperties() 자바 시스템 프로퍼티 OS 환경 변수 RandomValuePropertySource JAR 밖에 있는 특정 프로파일용 app.. 운영체제 - File System File System 파일 시스템은 2차 저장장치의 느린 속도를 극복하기 위해 온갖 기법이 들어가서 매우 복잡하다. 여기서 하는 정리는 수박 겉핥기 정도이다. 구체적으로 더 공부하고 싶다면 대학원에 진학하면 된다 File 기본 개념 File 이란 파일이란 데이터와 프로그램을 위한 '그릇'이다. 프로세스처럼 데이터와 프로그램이 logical address space에 연속적으로 존재한다. File Structure 종류 OS와 프로그램이 구조를 결정한다. None: words, bytes의 연속 Simple record structure: 레코드 단위, 한 줄이 한 의미를 가짐 - Lines: Fiexd(라인 길이 고정), Variable(라인 길이 가변) Complex Structures - Format.. Array - funtion of Array 1. Array.from - array-like object 를 array로 만들어준다. - getElementsByClassName 으로 만들어진 buttons 는 얼핏 array 와 비슷하게 생겼지만 array-like object인 HTMLCollection 이다. 이러한 객체들을 array로 바꿔주는 함수가 Array.from이다. Spring Boot test에서 H2 In memory 설정하기 우선 설정을 위해서 src/test 에서 resources 디렉토리를 추가해 주고 application.yml도 추가해준다. 이렇게 추가된 application.yml은 test시 main directory 하위에 있는 application.yml보다 우선권을 가지게 된다. spring: datasource: url: jdbc:h2:mem:test username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: create properties: hibernate: format_sql: true logging: level: org.hibernate.SQL: debug application.yml을 다음과 같이 작성했다. 이제.. string 해당 글에서는 es6 에서 달라진 HTML fragment 에 대해서 알아보고 그 활용법에 대해 포스팅 하고자 한다. 아래가 훨신 직관적으로 보임을 알수있다. 바뀐 fragment 의 사용법은 여기서 끝이 아니다! 바뀐 string의 사용법은 html의 수정이 일어났때 매우 유용하다. 위는 똑같은 동작을 하는 코드이다. es6 이전에는 줄바꿈을 지원하지 않았기 때문에 저렇게 html 형식으로 추가시킬수 없었다. 하지만 이제는 자바스크립트에서 html처럼 코드를 작성한뒤 넣는것이 가능하게 되었다. 뿐만 아니라 이제는 function (arg) 으로 함수를 부르는것이 아닌 function`arg` 로 호출하는 것이 가능하게 되었다. 이 방식은 react 에서 사용하는 방식이기 때문에 알아둘 필요가 있다. Arrow Function - ES6 에서 권장하는 함수 작성 방법 - 기본적으로 익명함수 이기 때문에 생성자로서 사용할 수 없다. - 특징 1. 파라미터가 하나일 경우 () 생략가능 2. {} 를 생략하면 return 을 적지 않아도 가능 3. this 의 범의가 기존 함수와 다르다. es6 이전의 함수 호출에서는 this의 범위가 함수가 어떻게 호출되었는지에 따라서 동적으로 할당되었다. 하지만 es6에서 arrow function 은 정적으로 상위 scope 의 this를 정적으로 가르킨다. 이전 1 다음