웹을 개발하다 보면 파일 업로드를 진행 할 때가 있습니다. 파일을 업로드를 하기 위해 이용 하는 것이 바로 태그입니다. 해당 태그를 사용하면 자동으로 웹페이지에서 파일 선택을 할 수 있도록 지원 해줍니다. 그런데 설정 없이 디폴트로 태그를 사용 하면 모든 확장자에 대해서 파일 선택이 가능 해 지게 됩니다. 특정 확장자만 가지고 파일 처리를 해야 하는 경우 예외 처리를 일일히 하기 힘든데, 이럴때 유용하게 사용 하는 것이 바로 accept 속성 입니다. 사용방법은 input 태그에 accept 속성만 추가 해준후 속성의 값에 사용 할 수 있는 특정 확장자를 지정하거나 미디어 타입을 지정하는 방법 또는 audio/*, video/*, image/* 형식으로 파일 확장자를 지정 할 수 있습니다. 파일 확장자는..
개발을 진행하다 보면 여러가지 암호화를 사용 하게 됩니다. 그중에서는 이번 포스팅에서는 MD5에 대해서 알아보도록 하겠습니다.MD5는 128비트 암호화 해시 함수입니다. RFC 1321로 지정되어 있으며,단반향 암호화로 주로 프로그램이나 파일이 원본 그대로인지를 확인하는 무결성 검사 등에 사용됩니다.다만 처음 소개 된 이후 약 20년이 지난 시점에서 여러가지 보안 이슈가 발견되면서, 비밀번호등과 같은 중요한 개인정보에 사용은 피해야 합니다. 현재는 주로 네트워크로 전송된 큰 파일의 무결성을 확인하는데 주로 사용되고 있습니다. 아래 간단한 예제를 살펴 보도록 하겠습니다. 12345678910111213141516public static String getMD5(String str) { String MD5 ..
자바를 이용하다 보면 BASE64를 많이 사용 하게 됩니다. BASE64는 8비트 이진 데이터를 문자코드에 영향을 받지 않는 공통 ASCII영역의 문자들로만 이루어진 일련의 문자열로 바꾸는 인코딩 방식입니다. 쉽게 말하면 일종의 암호화 방식이라고도 할 수 있습니다. BASE64를 사용 하는 간단한 예제에 대해서 소개해드리겠습니다. apache.commons.codec 라이브러리를 이용한 예제 이므로 사용 하시전에 apache lib를 임포트 후 사용 하셔야 합니다. 12345678910111213141516171819202122import org.apache.commons.codec.binary.Base64; /** * base64 encode, decode * */public class Base64Te..
SFTP를 이용한 파일전송에 대해서 알아보도록 하겠습니다. 간단한 전송 소스 예제를 소개 해드립니다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915..
클라이언트 혹은 서버를 개발 하다보면 특정서버에 파일을 전송 해야 할 때가 있습니다. 이럴때 사용 하는 것이 바로 FTP(File Transfer Protocol)입니다. 파일 전송 프로토콜(File Transfer Protocol, FTP)은 TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일 전송을 하기 위한 프로토콜로 파일 전송 시 유용하게 이용되는 프로토콜입니다. 이번 포스팅에서는 이 FTP를 이용해 파일을 업로드 하는 코드에 대해서 알아 보도록 하겠습니다. 소스 코드를 실핼 하기 위해서는 commons-net-X.X.jar를 이용하기 때문에 사전에 미리 다운로드 받아 프로젝트에 임포트 되어 있어야 합니다. FtpClient class 12345678910111213141516171819..
오라클에서는 일반적으로 정렬을 하게 되는 경우 ASC(오름차순),DESC(내림차순)를 이용해서 데이터를 정렬을 합니다.그런데 예외적으로 정령을 처리 해야 하는 경우가 생기게 됩니다. 가령 데이터에 월,화,수,목,금,토,일에 들어가 있다면 의도는 월~일까지 순서대로 정렬하고 싶은데, ASC(오름차순),DESC(내림차순)을 이용해서 정렬 하는 경우 원하는 정렬 결과가 나오지 않습니다. 이럴때 사용하는 것이 바로 커스텀 정렬입니다. 커스텀 정렬은 컬럼의 데이터를 가지고 오라클 내 정렬방법이 아니라 사용자가 직접 정렬순서를 설정할수 있도록 할 수 있도록 해주는 기능입니다. 임의의 테이블을 만들고 데이터를 INSERT 한 후에 특정 정렬순서에 따라 정렬하는 간단한 예제를 알아보도록 하겠습니다. 테이블 생성 123..
디비를 사용하다 해당 테이블의 데이터를 삭제 처리 할때 Delete,Truncate를 이용합니다. 눈으로 보기에는 Delete,Truncate와 별도 차이점 없이 둘다 데이터가 삭제 되는 것으로 생각 될 수 도 있습니다. 그렇지만 Delete,Truncate 각각 처리되는 과정과 결과가 틀린 큰 차이점이 존재 합니다. 이번 포스팅에서는 이러한 Delete,Truncate 2개의 차이점에 대해서 알아 보도록 하겠습니다. [TRUNCATE 구문] TRUNCATE TABLE [ { database_name.[ schema_name ]. | schema_name . } ] table_name [ ; ] [DELETE 구문] [ WITH [ ,...n ] ] DELETE [ TOP ( expression ) [ ..
디비를 사용 하다 보면 로그등을 남기기 위해 중복되지 않는 숫자가 필요한 경우가 있습니다. 이런 경우 사용 하게 되는 것이 바로 시퀀스(SEQUENCE)입니다. 시퀀스를 사용 하면 별도로 값을 관리 하지 않아도 DB에서 알아서 관리 해 줍니다. 이번 포스팅에서는 이 시퀀스에 대해서 알아보도록 하겠습니다. * Sequence 구문 CREATE SEQUENCE sequence_name [START WITH n] [INCREMENT BY n] [MAXVALUE n | NOMAXVALUE] [MINVALUE n | NOMINVALUE] [CYCLE | NOCYCLE] * START WITH 시퀀스의 시작 값을 지정합니다. n을 1로 지정하면 1부터 순차적으로 시퀀스번호가 증가 합니다. * INCREMENT BY..
이번 포스팅에서는 오라클에서 디비의 컬럼 순서를 변경 하는 방법에 대해서 알아보도록 하겠습니다. 디비를 운영하다 보면 처음 설계한 테이블의 컬럼의 순서를 변경 해야 하는 경우가 있습니다. 원칙적으로 오라클에서는 이런 상황에서 컬럼의 변경을 할 수 있는 수단을 제공 해 주고 있지 않습니다. 지금부터 설명 할려는 방법은 실제 테이블의 컬럼을 변경 하는 것이 아니라 테이블의 데이터를 임시 테이블에 복사 한후 새로 컬럼 순서를 변경 한 테이블을 생성 하여 임시 테이블에 있는 데이터를 새 테이블로 옮겨 마치 컬럼의 순서가 변경 되어 있는 것으로 하는 일종의 꼼수(?)인 방법 입니다. ※이 방법은 임시 테이블의 생성 후 복사/붙여넣기를 하는 식이기 때문에 테이블에 데이터가 많은 경우 문제가 발생 할 수 있습니다. ..
DB를 사용하다 보면 여러개의 테이블을 사용 하게 됩니다. 이렇게 사용 하던 중에 특정 컬럼명으로 조회를 해야 하는 경우도 있습니다.명명 규칙을 잘 지켰다면 동일한 컬럼명으로 여러개의 테이블에서 사용 하고 있을때 특정 컬럼명을 가지고 있는 테이블명을 가지고 오는 방법에 알아 보도록 하겠습니다. 단순한 쿼리 한번으로 해당 테이블 정보를 가지고 올 수 있습니다. 12345678select TABLE_NAME, COLUMN_NAMEfrom ALL_TAB_COLUMNSwhere COLUMN_NAME='컬럼명'; select TABLE_NAME, COLUMN_NAMEfrom ALL_TAB_COLUMNSwhere COLUMN_NAME LIKE '%컬럼명%'; Colored by Color Scriptercs 위 쿼..
- 19대 선거
- 한글패치
- 민주당 대선 후보
- 단면폭
- 7700K
- 국기 다는 시간
- 1800X
- 티스토리 초대장
- 오픈베타
- 하이엔드 그래픽카드
- Looper.prepare()
- 투표소
- 다렉
- unbound prefix
- 초대장
- 사제 쿨러
- 한글 패치
- 라이젠
- GPU 출시가격
- GPU 출시
- 예약메일 전송
- 포아너
- ONLINE JSON
- 테일즈 오브 베르세리아
- 1800TI
- 블로그 개설
- JSON PASER
- 래디어 구조
- 배달 지연
- 림의 외경
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |