본문 바로가기

PROGRAMMING

[ ORACLE ] REM INSERTING 은 무엇일까 내가 개발에 사용하고 있는 ORACLE DB를 어떤 테이블은 테이블만 어떤 테이블은 데이터와 함께 선별적으로 덤프뜰 일이 있어서 ORACLE에서 제공하는 SQL DEVELOPER를 이용하여 SQL문으로 EXPORT를 진행했다.그런데 데이터를 넣는 INSERT 문 앞에 어김없이 다음과 같은 문장이 있었다. REM INSERTING into '테이블명' 기억을 더듬거려보니 SQLGate for Oracle 툴을 통해 해당 SQL문을 돌렸을 때 문제가 있었던 터라 기존의 export한 SQL 문을 보면 일일이 주석 처리를 모두 해놨었다. 매번 볼 때마다 검색하고 잊어버리고 또 검색하는 반복을 없애고자 짧게 블로그를 남긴다. 구글에 'oracle REM INSERTING' 이라고 검색해보니 바로 내용이 나왔다... 더보기
[ JAVA 정복 ] Thread(쓰레드) - 2 6. 쓰레드 그룹(Thread group): 쓰레드 그룹은 서로 관련된 쓰레드를 그룹으로 다루기 위한 개념. 쓰레드 그룹은 보안상의 이유로 도입된 개념으로, 자신이 속한 쓰레드 그룹이나 하위 쓰레드 그룹은 변경할 수 있지만 다른 쓰레드 그룹의 쓰레드를 변경할 수는 없다. : 쓰레드를 쓰레드 그룹에 포함시키려면 Thread의 생성자를 이용해야 한다.모든 쓰레드는 반드시 쓰레드 그룹에 포함되어 있어야 하기 때문에 위와 같이 쓰레드 그룹을 지정하는 생성자를 사용하지 않은 쓰레드는 기본적으로 자신을 생성한 쓰레드와 같은 쓰레드 그룹에 속하게 된다. 123456789101112131415161718192021222324252627282930313233343536class ThreadGroupEx { public .. 더보기
[ JAVA 정복 ] Thread(쓰레드) - 1 1, 프로세스와 쓰레드(1) 프로세스(Process): 프로세스란 간단히 말하자면 '실행 중인 프로그램(program)' 이다. 프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 된다. - 프로세스 = 수행 시 필요한 데이터 + 메모리 등의 자원 + 쓰레드(실제로 작업을 수행하는 것): 모든 프로세스에는 최소한 하나 이상의 쓰레드가 존재하며, 둘 이상의 쓰레드를 가진 프로세스는 '멀티쓰레드 프로세스(multi-threaded process)'라고 함.하나의 프로세스가 가질 수 있는 쓰레드의 갯수는 제한되어 있지 않으나 쓰레드를 수행하는데 개별적인 메모리 공간(호출 스택)을 필요로 하기 때문에 메모리 한계에 따라 생성할 수 있는 쓰레드의 수가 결정됨. (2) 멀티태스킹과 멀티.. 더보기
[ JAVA 정복 ] java.lang 패키지와 유용한 클래스 오늘은 자바의 정석 Chapter 9장에 있는 내용 중 몇가지만 다뤄볼 예정이다. 1. String, StringBuffer, StringBuilder 차이(1) String: String은 new 연산자를 통해 생성되면 그 인스턴스의 메모리 공간은 절대 변하지 않는다.+나 concat을 이용해 문자열을 변경하는 경우가 있는데 그럴 경우 메모리 공간에 저장된 값이 변하는게 아니라 매번 새로운 String 객체를 new 연산자로 만들어서 새로운 메모리 공간을 만드는 것이다. * 여기서 잠깐! : 왜 아래 [ 예제 코드 1 ] 에서 String class의 hashCode() 메서드가 아닌 System 클래스의 identityHashCode() 메서드를 사용했을까? String 클래스는 문자열의 내용이 같으.. 더보기
[JAVASCRIPT] 정규식 없이 HTML 주석 제거하기 형태의 HTML 주석을 제거하기 위해 만든 JavaScript 함수다. function getRightText(str) {while(true) {if (str.indexOf('');str = str.substring(0, start) + str.substring(end+3, str.length);} else {break;}}return str;} 더보기
[ MYSQL ] 기존 데이터 한번에 PREFIX 붙여 수정하기 서비스 관리를 하다보면 이미 있는 데이터에 PREFIX처럼 접두어를 붙여서 수정해야 할 때가 간혹 있다.그럴 때 쓸 수 있는 방법은 다음과 같다. 예시를 보며 이해해보자. BOOK 이라는 Table이 있다. 해당 테이블에 있는 컬럼은 4개.Bookid, Name, Author, Price 이렇게 존재한다. 그리고 이 테이블의 데이터는 이렇게 존재한다. 여기서 Author의 데이터를 '(책이름)작가'로 바꾸고 싶다면 어떻게 해야할까?다음과 같이 하면 된다. UPDATE BOOK SET Author = CONCAT('(', Name, ') ', Author); * CONCAT Func : MySql에 존재하는 함수이다. CONCAT 함수의 파라미터로 원하는 값들을 넣어주면 값들이 모두 붙어 하나의 Strin.. 더보기
바이트순서(byte order) 그리고 빅엔디안(Big-endian)과 리틀엔디안(Little-endian) 오늘은 바이트 순서를 파헤쳐보는 시간이 되겠다. 처음 듣도보도 못했던 개념이었기에 파면 팔수록 뭔가 많이 나오리라! 했는데.. 기본적인 개념인가봉가 :-0 1. 바이트 순서(Byte order) : 바이트 순서 또는 바이트 오더라고도 불린다. 이 바이트 오더는 바이트를 배열하는 방법을 말하는 것이며, 자세히 말하자면 1바이트를 넘어가는 일련의 바이트를 어떻게 조합해서 실제 정수 등으로 나타낼지를 나타내는 것이다. "그럼 1바이트는!! 1바이트가 서운해쟈나" 라고 한다면 과감히 말할 수 있다. 괜찮다~!!! 1바이트 자체가 하나의 완전한 값이다. 따라서 1바이트만 읽으면 값이 바뀔 우려 없이 쉽게 값을 구할 수 있기 때문이다. 이 바이트 오더는 주로 네트워크 프로그래밍에서 중요한 기초 개념이라고 할 수 있.. 더보기
UDP(User Datagram Protocol) 파헤치기 저번 포스팅에서 TCP를 알아보았다면 이번에는 UDP를 알아볼까 한다. UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜) : 인터넷 상에서 서로 정보를 주고 받을 때 정보를 보낸다는 신호나 받는다는 신호 절차를 거치지 않고 보내는 쪽에서 일방적으로 데이터를 전달하는 통신 프로토콜이다. 송신자는 수신자가 데이터를 받았는지 받지 않았는지 확인할 수 없고, 또한 확인할 필요도 없도록 만들어진 프로토콜이다. * Datagram(데이터그램) : 발신지와 수신지 컴퓨터 그리고 전송 네트워크 사이에서 이전의 데이터 교환과 관계없이 발신지로부터 수신지 컴퓨터로 배달되어지는 충분한 정보를 갖는 독립적인 데이터 실체. 이는 인터넷이 운반해야 할 메세지 단위인 패킷이라 봐도 무방하다. UDP의 .. 더보기
TCP(Transmission Control Protocol) 파헤치기 과가 과인만큼 나는 전산학 기초가 탄탄하지 못하다. 원래 IT 쪽을 꿈꾼 것도 아니었으니..으아 그래서 이제부터 전산학 기초를 하나하나 쌓아가겠다고 생각하였다! 그 결과, 대망의 첫번째 블로그는 TCP/UDP이다. 그 중 TCP를 먼저 정리해볼까 한다. - TCP(Transmission Control Protocol, 전송 제어 프로토콜) : 인터넷과 같이 실제의 물리적 접촉이 없는 통신 환경에서 데이터를 전송하는데 사용되는 프로토콜 중 하나로 IP와 함께 TCP/IP라는 명칭으로 널리 불린다. TCP는 양방향 프로토콜로 요청을 하면 반드시 응답을 받아야되므로 신뢰성이 있는 프로토콜이라 불린다. * 프로토콜(protocol) : 컴퓨터 상호간 혹은 컴퓨터와 단말간에서 통신을 할 때에 필요한 통신규약 * .. 더보기
MAVEN - plugin, phase, goal, LifeCycle 메이븐 책을 한 3번은 본 것 같다. 하지만 볼 때마다 아직도 깊은 이해가 가지 않아 블로그에 정리한다. 메이븐을 이해하기 위해서는 plugin, phase, goal, LifeCycle을 이해해야 한다. 이 네가지가 기본 개념이기 때문이다. MAVEN PLUGIN 메이븐에서 제공하는 모든 기능은 플러그인을 기반으로 동작한다. 메이븐은 자체는 기본적인 기능만 가지고 있고 대부분의 기능들은 플러그인을 통해 제공하도록 되어있기 때문이다. 플러그인들은 몇가지 goal을 가지고 있고 goal은 플러그인에 포함되어 있는 명령이다. 즉, 플러그인은 하나 이상의 goal의 집합체이다. 메이븐에서 활용할 수 있는 대부분의 플러그인은 다음 두 개의 사이트에서 제공하고 있다. - 아파치 메이븐 사이트 http://mave.. 더보기