반응형

전체 글 941

[MySQL] 임의의 비밀번호 채번하기

비밀번호 찾기 등에서 임의의 비밀번호를 채번하는 경우 다음과 같이 작성해볼 수 있습니다. SELECT CONCAT( CHAR(RAND() * 24 + 97) , CHAR(RAND() * 24 + 97) , CHAR(RAND() * 24 + 97) , CAST(RAND() * 9 as INT) , CAST(RAND() * 9 as INT) , CAST(RAND() * 9 as INT) ) userPwd 해당 방법을 사용하면 소문자 3자리 + 숫자 3자리의 임의의 비밀번호가 채번됩니다. 만약 다음과 같이 WITH 절을 사용하여 같은 명령을 5번 수행해보면 WITH V_TEMP AS ( SELECT CONCAT( CHAR(RAND() * 24 + 97) , CHAR(RAND() * 24 + 97) , CHAR..

[Spring] Email 발송하기

최근에 임의로 채번된 비밀번호를 발송하기 위한 메일링 서비스를 제작하면서 한번 작성해볼까 합니다. 저는 일단 Gmail 계정 기준으로 했지만, SMTP설정에 따라 다르게 발송 가능합니다. 1. Gmail 계정 준비하기 - 따로 쓸 말이 없네요 2. Gmail SMTP 보안 설정 - myaccount.google.com/security?gar=1 3. 관련 Libriary 설정 - pom.xml javax.mail mail 1.4.7 org.springframework spring-context-support ${org.springframework-version} 4. Properties 설정 - WEB-INF > config > email.properties email.account=이메일주소@gmail..

개발 창고/Web 2020.11.30

[Ajax] org.apache.commons.fileupload.FileUploadException: Stream ended unexpectedly

기본 개발을 크롬에서 하다 보니 가끔 간과하고 넘어가는 부분이 있는데, 그중에 하나가 ie에서의 사용을 고려하지 않은 경우가 있습니다. 최근에 그 중에서 하나가 바로 아래의 에러였는데, 이는 FormData를 ajax로 전달할 때 (주로 첨부파일을 포함한 multipart) 전송 시에 chrome에서는 정상적으로 진행되지만, ie버전에서 오류가 발생하는 현상입니다. 이때 여러가지 방법들이 오갔지만, 그냥 아래 한 줄을 더 추가해주면 정상적으로 수행이 됩니다. (이유는 아직.... 단순 버그로 보고 있음) let url = "Rest URL"; let param = new FormData($("#FormID")[0]); $.ajax({ async:false , url: url , type:"POST" , ..

개발 창고/Web 2020.11.26

[Android] string.xml 특수문자 처리

android 개발 중 resource 파일의 strings.xml에 특수문자를 넣은 경우 다음과 같은 오류를 받곤 합니다. 이는 xml에서 일부 특수문자가 사 전어로써 사용되기 때문인데, (ex, &의 경우 특수문자의 시작을 알림) 때문에 특수문자는 아래처럼 기호로 변경해서 입력해주어야 되며, 이게 결과에서 정상적으로 표현되어 보이게 됩니다. 앱&특수문자 앱&특수문자 어플명이 &가 변환되어 표현되었음을 확인하실 수 있습니다. 이처럼 주로 사용되는 특수문자의 경우 다음과 같습니다. 특수문자 표기법 & & > " " ' ' 출처: www.w3schools.com/html/html_entities.asp HTML Entities HTML Entities Reserved characters in HT..

[Android] More than one file was found with OS independent path 'META-INF/DEPENDENCIES'.

프로젝트를 만들고 예제 소스를 붙였더니, 기존 버전에서 지원되지 않는 lamda가 포함되어있었습니다. 때문에 lang 버전을 업그레이드하고 진행했던, 아래와 같이 META가 중복되는 현상이 발생하였습니다. ▶ 오류: More than one file was found with OS independent path 'META-INF/DEPENDENCIES'. ▶ 이유: 버전 변경에 따른 META 중복 ▶ 처리방법: app의 build.gradle에서 아래 구문을 추가 packagingOptions { exclude 'META-INF/DEPENDENCIES' exclude 'META-INF/LICENSE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/license.t..

[Javascript] 중복되지 않는 데이터 배열, Set - 기본편

일반적으로 일련의 데이터 목록을 등록할 때는 다음과 같이 선언해서 사용할 수 있습니다. // 1. 사전정의 var arr1 = [1, 3, 3, 4]; // 2. 정의 후 추가 (1) var arr2 = new Array(); arr2.push(1); arr2.push(3); arr2.push(3); arr2.push(4); // 3. 정의 후 추가 (2) var arr3 = []; arr3.push(1); arr3.push(3); arr3.push(3); arr3.push(4); 이에 대한 자세한 사항은 이전 글에서 확인하실 수 있습니다. 2020/09/18 - [개발 창고/웹 개발] - [Javascript] 배열(Array) 활용하기 [Javascript] 배열(Array) 활용하기 이번엔 Arra..

개발 창고/Web 2020.11.10

[Javascript] 배열 정렬

2020/09/18 - [개발 창고/웹 개발] - [Javascript] 배열(Array) 활용하기 [Javascript] 배열(Array) 활용하기 이번엔 Array를 자세히 다뤄볼까 합니다. Array 만들기 // 방법1. 빈 array 만들기1 var arr = []; // 방법2. 빈 array 만들기2 var arr = new Array(); // 방법3. String array 만들기 var arr = ['가', '나',.. royzero.tistory.com 예전에 배열에 대해 작성한 적이 있는데 이번에는 이 배열을 정렬하는 법에 대해 이야기해볼까 합니다. 배열을 정렬해주는 함수는 Array.sort() 라는 녀석입니다. 일반적으로 값으로 이루어진 배열인 경우 let arr = [1, 3, ..

개발 창고/Web 2020.11.10

[SQL] 인덱스 생성/조회/삭제 (feat. MariaDB)

2020/11/09 - [개발 창고/데이터베이스 개발] - [SQL] Index란 무엇인가? - 개념편 [SQL] Index란 무엇인가? - 개념편 먼저 안내하자면, DBA수준의 지식이 아니기 때문에 INDEX에 대해 깊게 이야기하는 건 조금 어려울 수 있지만, 개발자 입장에서 이해하고 가면 좋을 정도를 기술해볼까 합니다. (원래는 오라클의 I royzero.tistory.com 이전에 인덱스의 개념에 대해 가볍게 터치했다면 이번에는 인덱스 사용법에 대해 적어볼까 합니다. 아래 테이블을 예시로 인덱스를 생성하면 TB_BOARD MariaDB 기준 인덱스 생성 /* 문법 */ CREATE OR REPLACE INDEX 인덱스명 ON 테이블명 (컬럼1 [, 컬럼2, 컬럼3, ...]) /* 예제: 게시판(T..

[SQL] Index란 무엇인가? - 개념편

먼저 안내하자면, DBA수준의 지식이 아니기 때문에 INDEX에 대해 깊게 이야기하는 건 조금 어려울 수 있지만, 개발자 입장에서 이해하고 가면 좋을 정도를 기술해볼까 합니다. (원래는 오라클의 INDEX 사용법에 대해 먼저 기술하려 했지만, 그전에 가볍게 건들고 가도 좋을 것 같아 작성된 내용이므로 그냥 가볍게 봐주셨으면 합니다.) INDEX란? 흔히 책을 펼치면 두 가지 인덱스를 마주하게 됩니다. 첫 번째는 목차, 두 번째는 책의 마지막에 나오는 용어별 페이지 쪽수 (주로 전공서 등에 있음)로 나눠 볼 수 있습니다. 첫 번째의 경우 주제별로 우리가 페이지를 찾아가기 쉽게 하고, 두 번째의 경우 용어별로 원하는 페이지를 찾기 쉽게 합니다. 이처럼 인덱스란, 데이터(책 페이지)를 쉽게 찾을 수 있도록 정..

반응형