본문 바로가기

php

자바 쓰레드(Thread) - 멀티 쓰레드(Multi-Thread) * 스레드 기반 멀티 태스킹에서는 스레드가 가장 작은 코드 단위이다. * 즉, 단일 프로그램이 두개 이상의 태스크(task)를 동시에 수행할 수 있다는 것을 의미(멀티쓰레딩) * 프로그램에서 발생하는 유휴시간(idle time)을 이용할 수 있는 효율적인 프로그램을 개발 가능 * 대부분의 I/O장치는 CPU보다 느리기 때문에, 이들을 사용하는 프로그램은 많은 시간을 이들로부터 정보를 주고 받는 과정에서 소비한다. * 멀티 쓰레딩을 이용하면 이러한 유휴시킨에 다른 태스크를 수행할 수 있다. * 멀티 쓰레딩이 지원되지 않던 시절에는 이터럽트 등의 편범을 이용해서 프로그래밍 * 자바에서는 언어 차원에서 스레드를 지원한다. * 모든 프로세스는 적어도 하나의 실행되는 스레드를 갖고 있어야 하며, 프로그램이 시작 .. 더보기
자바 네트워크(Network) - UDP 예제 2 (멀티캐스트-MulticastSocket) 일단 DatagramSocket클래스의 자식 클래스를 알아보자. DatagramSocket클래스의 자식 클래스는 MutilcastSocket이다. 우선 자바API에서 MulticastSocket을 살펴보자. 가기 귀찮아서 퍼왔다. 잘 해석해서 이넘이 무엇을 하는 넘인지 살펴보자. public class MulticastSocket extends DatagramSocket The multicast datagram socket class is useful for sending and receiving IP multicast packets. A MulticastSocket is a (UDP) DatagramSocket, with additional capabilities for joining "groups" .. 더보기
자바 네트워크(Network) - Thread를 이용한 TCP/IP 예제 Thread를 이용한 TCP / IP예제이다. 복수의 클라이언트에서 요청 받은 것을 서버에서는 각각 쓰레드를 생성해서 에코형식의 메세지를 클라이언트에게 전달 해 준다. 우선 서버 프로그램 코드를 보자. 이전에 썼던 내용과 다를게 없다. 서버 소켓, 클라이언트용 소켓 생성해서 무한 루프 돌면서 클라이언트 요청을 받는다. 다만 while문에서 쓰레드를 각각 생성해서 쓰레드에서 에코가 되게 요청단위로 처리해 준다. 쓰레드를 구현한 소스를 보자. 쓰레드기 때문에 서버 프로그램에서 클라이언트 요청이 들어 왔을때 생성자로 요청을 읽고 다시 요청응답을 돌려주기 위해서 InputStream과 OutputStream을 생성하였다. 그리고 run에서는 요청 내용을 읽고 다시 클라이언트로 요청내용을 그대로 돌려 준다(에코,.. 더보기
JAVA I/O (자바입출력) - InputStream과 OutputStream 자바 I/O중 바이트 스트림에 관련된 가장 최상이 클래스인 InputStream과 OutputStream 간단한 예제를 보자. (참고로 영문은 1바이트, 한글은 2바이트이다.) import java.io.IOException; public class ByteStreamTest { public static void main(String[] args) throws IOException{ byte data[] = new byte[20]; // 외부에서 읽어드린 데이터를 저장 하는 변수 선언.(바이트니까 바이트 객체로..20바이트만 읽음. 배열 갯수는 알아서) System.out.println("Input data : "); System.in.read(data); //System.in.read(data)를 쓰면.. 더보기
CSS 코드 생성기. css3 소스 생성. 천재가 아니라 외우질 못해서 남겨두자. http://css3pie.com/ 더보기
2013 년 2월 트위터에서 인기있는 컴퓨터 프로그래밍 랭귀지 2013년도 2월 트위터 상(Jobs Tractor)에서 가장 있기있는 컴퓨터 프로그래밍 랭귀지는 자바로 선정됐다. (출처 : http://jobstractor.com/monthly-stats) PHP도 자바 못지 않게 많은 수의 Job들이 트위터 상에서 나타났다. 역시 Java가 갑인가 보다. 하지만 난 지금 PHP를 하고 있어서 약간 걱정이 됐는데 그나마 안심이다. 그 뒤를 안드로이드와 애플 Objective C가 따르고 있다. 하지만 이 통계는 트위터 상의 자료 일뿐 다른 조사 방법에 의한 데이터와는 틀릴 수도 있다. 전체 데이터 통계는 아래 사이트에서 조사해보면 현재 전세계에서 가장 잘 나가는 프로그래밍 랭귀지를 파악할수있다 (하지만 여기서도 자바는 1등이다) http://www.tiobe.com.. 더보기
구글(google map) 맵 달기 (jquery, json) 구글 맵 달기 정리.(PHP, JAVASCIRPT, JQUERY, JSON) 위치 정보를 알려줄때 구글 맵을 많이 이용한다.. 아래는 소스 위주로 설명을 한다. 우선 구글 맵 api를 전반적인 설명은 아래 사이트 에서 참고 하면 된다. https://developers.google.com/maps/documentation/javascript/reference?hl=ko 참고로 자바스크립트 api를 이용하였다. 이건 구글맵 튜토리얼이다. 보고 원하는 지도에 대한 소스를 카피해서 홈페이지에 붙이면 된다. https://developers.google.com/maps/documentation/javascript/tutorial#api_key 사실 해당 홈페이지에서 제공하는 튜토리얼 만한것은 없다. 그러니 열심.. 더보기
Get방식으로 공백넘길때 처리방법 JAVA로 코딩할때(아니 jsp가 맞겠다)나 php, asp등 화면단에서 get방식으로 많이 값을 다른 페이지로 넘긴다. 그럴때 대표적인 방법이 get과 post방식이 있는데 get방식으로 넘길때 최대 2047바이트를 넘어갈수 없다고 한다. url에 공백이 있으면 공백 이후 파라미터들이 짤리게 되는데 그때는 url을 인코딩해서 넘기거나 아니면 정확히 ''로 감싸주어서 넘겨야 한다. 그럼 알아서 인코딩 ㅇㅖ) 가자 c=d 이하는 짤림 가자 수동으로 공백을 인코딩해서 넘겨준것 가자 더보기
Drupal 설치 요즘 워드프레스가 인기다. 예전에 드루팔(Drupal)을 영문판으로 설치 한적이 있다. php기반으로 되어 있다. 왜 cms같은것들은 전부 php기반일까?...궁금하다 아무튼.. 영문판 Drupal을 설치했다. 설치하다 보면 한글때문에 오류 날 수 있다.Warning: htmlspecialchars(): Invalid multibyte sequence in argument in check_plain() (line 1476 ofC:\inetpub\wwwroot\drupal\drupal\includes\bootstrap.inc).PDOException: in lock_may_be_available() (line 165 of C:\inetpub\wwwroot\drupal\drupal\includes\lock... 더보기
SW 개발자, “HTML5가 대세” HTML5가 대세가 될것이라는 말은 수년전부터 이야기 되어 왔다. 개인적으로 HTML5는 JQUERY MOBILE로 모바일 페이지 만들때만 몇가지 태그를 사용했지만 사실 HTML5 태그 자체만 그리 어렵지는 않다. 웹페이지를 HTML5로 만들고 싶어도 브라우저가 전부(특히 IE) 지원 하지 않는게 단점.. 하지만 점점더 브라우저가 버전업되면서 지원 되면 언젠가는 VIDEO태그도 SOUND 태그도 쓰고 웹소켓도 할수 있겠지~ 그러나 나에게는 현재 자바 스프링(spring)프레임웤을 정복하는게 먼저다. http://www.bloter.net/archives/145284 더보기