본문 바로가기
반응형

프로그래밍/java23

java JSON 라이브러리 ●자바JSON- 자바에서 JSON을 만들고 파싱을 해주는 기본 클래스가 없기때문에 라이브러리를 추가해줘야 한다. - 자바 JSON라이브러리는 여러가지가 있다. 아래 예제는 org.json 라이브러리를 사용했다.http://mvnrepository.com/artifact/org.json/json ●예제- text.jsp 2015. 4. 26.
java 오늘이 무슨 요일인지 구하기 ●자바로 오늘이 무슨 요일인지 구하기 String[] weekDay = { "일요일", "월요일", "화요일", "수요일", "목요일", "금요일", "토요일" }; Calendar cal = Calendar.getInstance(); int num = cal.get(Calendar.DAY_OF_WEEK)-1; String today = weekDay[num]; System.out.println(num); System.out.println("오늘의 요일 : " + today ); 2015. 1. 6.
자바 java.io 패키지, File클래스 ●File 클래스- 파일과 관련된 정보를 나타내고 제어하는데 주로 사용된다. 파일에 관한 정보를 설정하고 속정을 바꾸는 기능 등을 한다. - FileEx.javaimport java.io.File; class FileEx{public static void main(String[] args){File f1 = new File("aa.txt"); System.out.println("f1.getPath():"+f1.getPath());System.out.println("f1.getAbsolutePath():"+f1.getAbsolutePath());System.out.println("f1.getName():"+f1.getName());System.out.println("f1.toString():"+f1.toS.. 2014. 4. 11.
자바 java.io 패키지, 문자 스트림(Character Stream) ●문자 스트림(Character Stream)- 자바 스트림 클래스 중에서 처리할 데이터가 문자인 경우에 사용한다. 문자 스트림은 16bit 유니코드 문자를 주고 받는다. ReaderWriter 입출력을 위한 문자 스트림의 최상위 추상 클래스 FileReaderFileWriter 파일 입출력을 위한 문자 스트림 클래스 BufferedReaderBufferedWriter 입출력 스트림에 버퍼링 기능을 추가해주는 스트림 PrintWriter 출력을 위한 동작을 지원하는 문자 스트림 InputStreamReaderOutputStreamWriter 바이트와 문자 변환을 위한 입출력 스트림 ●FileReader, FileWriter 클래스- 기본 문자 인코딩 방식으로 텍스트 파일을 읽고 쓰기 위해 제공되는 문자 .. 2014. 4. 11.
자바 java.io 패키지, 바이트 스트림(Byte Stream) ●바이트 스트림(Byte Stream)- 데이터의 종류가 파일, 그림, 동영상 등의 바이트 기반인 경우 사용하는 클래스로 바이트 단위로 입출력을 제어한다. InputStreamOutputStream 입출력을 위한 바이트 스트림의 최상위 추상 클래스 FileInputStreamFileOutputStream 파일 입출력을 위한 바이트 스트림 클래스 DataInputStreamDataOutputStream 자바 기본형(primitive) 데이터를 입출력 하기 위한 클래스 BufferedInputStreamBufferedOutputStream 입출력 스트림에 버퍼링 기능을 추가한 클래스 PrintStream System.out을 통해 콘솔로 출력하기 위한 클래스 ●OutputSTream, InputStream .. 2014. 4. 11.
자바 java.io 패키지, 스트림 ●스트림- 스트림은 하드웨어 장치로부터 데이터를 읽거나 기록할 때 사용하는 중간 매개체 역할을 하는 것이다. 자바에서 입출력은 스트림(stream)을 통해 이루어진다. 자바에서는 java.io 패키지에서 입출력에 관한 기능들을 제공한다. - 스트림을 기능에 따라 분류하면 스트림의 기본적인 기능을 담당하는 노드 스트림과 노드 스트림이나 다른 필터 스트림에 붙어서 더 효율적이도록 기능을 확장 시켜주는 필터 스트림으로 분류할 수 있다. 노드 스트림에는 FileInputStream, FileOutputStream 클래스가 있고, 필터 스트림에는 BufferedInputStream, BufferedOutputStream, DataInputStream, DataOutputstream 클래스 등이 있다. - 스트림을.. 2014. 3. 7.
자바 네트워크 프로그래밍 UDP 소켓 ●UDP 소켓- TCP 소켓은 서로 연결된 상태에서의 통신 방법이다. 이 방법은 높은 신뢰성이 요구된느 응용 프로그램에 적합하지만 높은 신뢰성이 요구되지 않거나 적은 양의 데이터를 전송할 때는 네트워크에 부담을 많이 주기 때문에 적합하지 않다. 그래서 이때는 UDP소켓을 쓰는 것이 좋다. - UDP는 TCP소켓에 비해 신뢰성과 안정성은 부족하지만 연결을 설정하지 않으므로 네트워크에 부담을 주지 않는다. - 자바에서는 DatagramPacket, DatagramSocket 클래스를 사용한다. - DatagramPacket 클래스는 데이터그램을 사용할 수 있게 한다. - 데이터그램 패켓은 비연결 패킷 전송 서비스를 구현하기 위해 사용한다. - DatagramSocket 클래스는 데이터그램 패킷을 보내거나 받.. 2014. 2. 9.
자바 네트워크 프로그래밍 TCP/IP 소켓 ●소켓- 네트워크에 연결된 각 컴퓨터간에 데이터를 주고 받을 때 사용하는 도구이다. - 소켓은 하드웨어 장비가 아닌 소프트웨어 차원의 개발 도구이다. ●서버 소켓- 서버 소켓은 클라이언트 소켓으로부터 접속 요청을 기다리고, 접속 요구가 있으면 클라이언트와 통신할 서버 측의 소켓을 생성한다. - 자바에서는 ServerSocket 클래스가 서버 소켓을 위한 기능을 제공한다. ●클라이언트 소켓- 서버 소켓의 IP주소와 포트 번호를 필요로한다. - 클라이언트에서 소켓 객체를 만들면, 소켓은 바로 주어진 IP주소와 포트 번호로 서버에 연결을 시도하고 서버소켓은 다른 소켓을 만들어 클라이언트 소켓과 연결한다. - 자바에서는 Socket 클래스를 이용한다. ●ex- 서버에서 클라이언트에 현재 시간을 전송하는 예제 -.. 2014. 1. 31.
자바 네트워크 프로그래밍 URLEncoder, URLDecoder, URLConnection 클래스 ●URLEncoder 클래스- 운영체제마다 일부 문자를 인식하는 방법이 다르기 때문에 이를 해결하기 위해 사용하는 클래스이다. - URLEncoder 클래스는 데이터를 웹서버에서 요구하는 데이터 형식으로 바꾸는 기능을 한다. -위에서 웹서버가 요구하는 형식은 'x-www-form-urlencoded'라고 불리는 MIME 형식을 말한다. -MIME 형식 변환 규칙1. 아스키 문자(a~z, A~Z, 0~9), '.', '-', '_' 등은 그대로 전달된다.2. 공백은 '+'로 전달된다.3. 기타문자는 %ㅁㅁ 와 같이 전달된다. 이때 %ㅁㅁ는 아스키코드를 16진수화한 결과를 나타낸 것이다. ●URLDecoder 클래스- URLEncoder클래스와 반대의 기능을 하는 클래스로, 'x-www-form-urlenc.. 2014. 1. 29.
자바 네트워크 프로그래밍 URL 클래스 ●URL- http,ftp,telnet 등의 서비스를 지원하는 웹 서버들의 위치를 표현하는 체계이다. - 보통 아래의 형태를 가진다. protocol://hostname[:port]/path(ex. http://naver.com) ●URL 클래스- 웹상의 주소(URL)을 나타내는 클래스이다. - InetAddress클래스보다 확장된 개념으로 네트워크 연결까지 가능하다. 따라서 URL객체 생성 시 잘못된 URL형태를 주었을때의 예외처리를 반드시 해야한다. - 자바에서는 URL클래스를 사용하면 간단하게 호스트로부터 데이터를 읽어올 수 있다. -ex1 ->URL클래스로 호스트의 정보를 표시하고 페이지를 화면에 출력하는 예제1.URL 객체 생성 URL url = new URL("http://www.naver.c.. 2014. 1. 29.
자바 네트워크 프로그래밍 IP주소 관련 InetAddress 클래스 ●InetAddress 클래스- 자바에서 IP 주소를 표현할때 사용하는 클래스이다. - InetAddress의 주요 메서드 ->getAddress() - InetAddress 객체의 IP주소를 반환 ->getHostAddress() - IP주소를 반환 ->getHostName() - 호스트 이름을 문자열로 반환 - eximport java.net.*; class ex1{public static void main(String args[]) throws UnknownHostException{InetAddress address = InetAddress.getLocalHost();System.out.println("로컬컴퓨터 이름:"+address.getHostName());System.out.println(".. 2014. 1. 29.
자바 네트워크 프로그래밍 인터넷 주소 체계 ●IP- 인터넷상에서 하나의 컴퓨터를 구분하기 위한 고유번호이다. - 234.212.324.212 처럼 4개의 숫자로 구성되고 각 숫자는 0~255까지 256개의 숫자를 나타낼 수 있다. 이 중 0은 네트워크 주소로, 255는 브로드캐스트 주소로 사용이 예약되어 있다. - 현재 32비트의 IPv4는 포화 상태라 128비트의 IPv6으로 대체되고 있다 ●도메인 이름- 숫자로 된 IP주소는 기억하기도 힘들고 입력하기도 힘들어서 불편하다. 그래서 IP에 대응 하는 문자로 된 주소를 사용하는데 이를 도메인이라 한다. - 예를 들어 네이버의 IP주소는 'http://202.131.30.12/' 이고 도메인 주소는 'www.naver.com' 이다. ●DNS(Domain Name System)- 도메인 이름은 사용.. 2014. 1. 23.
자바 네트워크 프로그래밍 실습환경 구측(에디트플러스에 java 실행 환경 구축) ●상단 메뉴의 도구->기본설정을 클릭한다. ●사용사 도구에서 '추가'를 누른다. - 메뉴제목에 'javac'를 입력하고 명령에는 자바가 설치된 경로에서 bin폴더 안에 있는 javac.exe를 선택한다.인수에는 '$(FileName)' 를 입력하고 디렉토리에는 '$(FileDir)' 를 입력한다.동작은 '출력 내용 캡쳐'를 선택한다. - 메뉴제목에 'java'를 입력하고 명령에는 자바가 설치된 경로에서 bin폴더 안에 있는 java.exe를 선택한다.인수에는 '$(FileNameNoExt)' 를 입력하고 디렉토리에는 '$(FileDir)' 를 입력한다.동작은 '출력 내용 캡쳐'를 선택한다. ●도구모음에서 사용자를 선택하고 사용자 도구1,2를 오른쪽으로 옮긴다. ●상단메뉴에 아래 그림 2개가 나타나면 성공.. 2014. 1. 18.
자바 네트워크 프로그래밍 실습환경 구축(java설치) ●java로 네트워크 프로그래밍 공부를 할 것이기 때문에 java 개발환경을 구축한다. ●자바sdk 설치- http://www.oracle.com/ 여기서 자바sdk를 다운받고 설치한다. ●자바 환경변수 설정 - 내컴퓨터 우클릭->속성->고급->환경변수를 클릭한다. - 시스템변수에서 새로만들기를 클릭하고 변수이름은 'CLASSPATH', 변수값은 '.;%JAVA_HOME%lib%tools.jar'를 입력한다. - 시스템변수에서 새로만들기를 클릭하고 변수이름은 'JAVA_HOME', 변수값은 'C:\Program Files\Java\jdk1.7.0_45'(java sdk가 설치된 경로)를 입력한다. - 시스템변수에서 path가 없으면 새로만들기를 클릭하고 있으면 편집을 클릭한 후 변수이름은 'PATH', .. 2014. 1. 18.
네트워크 기본 개념 ●네트워크 구성원 간의 관계에 따른 분류- 피어 투 피어 >1:1 접속을 기본적으로 하며, 각각의 pc가 서로 대등하게 연결되는 방식이다.서버가 필요 없고 소규모 네트워크에 적합하다. - 클라이언트/서버 >서비스를 제공하는 쪽과 이를 요청하고 이용하는 쪽이 구분되는 방식이다. 별도의 고성능 서버 장비가 필요하다. ●네트워크의 서비스 영역에 따른 분류- LAN >근거리 네트워크에 적합하다 -WAN >멀리 떨어져 있는 LAN을 연결한 네트워크라고 할 수 있다. 흔히 우리가 사용하는 인터넷이 WAN이다. ●OSI 7계층- 초기 네트워크 프로토콜은 특정 업체가 자사의 장비들을 연결하기 위해 만들것들 이라서 다른 네트워크 간에는 호환되지 않았다. 그래서 이런 문제들을 해결하기 위해 ISO에서 OSI 7계층을 제정.. 2014. 1. 11.
java 현재 날짜 구하기 ●자바 현재 날짜 구하기java.util.Calendar cal = java.util.Calendar.getInstance(); //현재 년도, 월, 일int year = cal.get ( cal.YEAR );int month = cal.get ( cal.MONTH ) + 1 ;int date = cal.get ( cal.DATE ) ; //현재 시간(시,분,초)int hour = cal.get ( cal.HOUR_OF_DAY ) ; int min = cal.get ( cal.MINUTE ); int sec = cal.get ( cal.SECOND ); 2013. 12. 23.
java int, String 형변환 ●String형 -> int형 String b = "abc"; int a = Integer.parseInt(b); ●int형 -> String형 int b=1; String a = Integer.toString(b); 2013. 12. 3.
자바 난수 발생하기 ●random()함수나 Random 클래스를 이용해서 만든다. Random 클래스를 사용하는 경우, import java.util.*을 선언해줘야한다. ●double ran=Math.random(); //0< ran 2012. 6. 20.
자바(java) 프로그래밍 ●자바는 대소문자를 구별한다 ●한글이름으로 된 디첵토리를 잘 안될수 있다. 디렉토리명은 될수 있으면 영어로 하는게 좋다 ●main()이 있는 클래스를 실행시켜야 한다. ●main은 항상 'public static void main(String []args){}' 형태이다 ●애플릿으로 작성한 클래스는 항상 'public'이다 ●한 파일에 public 클래스는 최대 1개이다. 1개를 초과하면 컴파일시 에러발생 ●public 으로 선언된 클래스가 있는 경우에 파일 이름은 해당 클래스 이름과 동일해야 한다 ●생성자(constructor)는 리턴타입이 없고 클래스 이름과 같다 ●하나의 java파일에 여러개의 class를 만들 수 있는데 파일명과 같은 이름의 class는 public로 선언한다. 그 외 다른 cla.. 2012. 1. 30.
자바(java) 문법 간단 정리4 ●상속 - 다른 클래스의 멤버를 계승하는것, 'extends' 를 사용한다 ex) class A{ int a } class B extends A{ ~~ } ●private 접근 제한자가 붙은 멤버는 다른 오브젝트에서 이용할수 없고 서브클래스로 상속할수 없다. ●super - 서브클래스안에서 super라는 말을 사용하면 슈퍼클래스의 필드와 메서드를 참조할 수 있다. ex) class A extents B{ void aaa(){ super.bbb(); } } ●추상 메서드 - 처리 내용은 기술하지 않고, 호출하는 방법만을 정의한 메서드 ●추상 클래스 - 추상 메서드를 가진 클래스 ●인터페이스(interface) - 추상메서드와 정의만이 멤버가 될수 잇는 것으로 클래스와는 다르다 ●추상메서드와 추상클래스의.. 2012. 1. 30.
자바(java) 문법 간단 정리3 ●클래스(class)를 실체화 한 것을 오브젝트(객체)라고 하고 실체화 하는 작업을 '오브젝트(Object)를 생성한다' 또는 '인스턴스화 한다'라고 말한다 ●클래스의 멤버에는 필드와 메서드가 있다. 필드는 c언어의 변수와 비슷한 개념이다 ●오브젝트(객체) 생성 클래스명 객체명 = new 클래스명(); ex) Book book = new Book(); ●다른 오브젝트(객체)의 필스를 이용 - '.(피리오드)'를 사용한다 오브젝트명.필드명 ex) class Date{ int month; int day; } class wether{ public static void main(String []args){ Date today = new Date(); today.month = 10; today.day = 5; }.. 2012. 1. 30.
자바(java) 문법 간단 정리2 ●if문 if(조건식) { 내용 } else{ 내용 } ●if~else if~else if(조건){ 내용 } else if(조건){ 내용 } else{ 내용 } ●for문 int i; for(i=0; 조건식; i증감문){ 내용 } ●while문 while(조건){ 처리 } ●switch문 switch(식) { case 값1: //세미콜론(;)이 아니라 콜론(:)이다 처리 break; case 값2: 처리 break; default: //default에도 콜론(:) 붙인다 처리 } ●String 클래스의 메서드(method) -length() - 문자열의 길이 구할때 사용 ex) String a ="abc"; int b = a.length(); -substring() - 문자열의 일부를 가져온다 ex) S.. 2012. 1. 30.
자바(java) 문법 간단 정리1  ●자바(java) 에디션 -SE(Standard Edition) - 클라이언트 지향의 가본적인 환경 -EE(Enterprise Edition) - 서버 소프트웨어(jsp 등) 개발을 위한 환경 -ME(Micro Edition) - 휴대전화 등 소형기기를 위한 소프트웨어 개발환경 ●메소드(Method) - 객체의 기능을 표현하는 방법으로 c언어의 함수와 비슷하지만 c에서처럼 독립적으로 호출될 수 없고 반드시 객체와 같이 사용되야 한다. ●클래스(Class) - 객체의 구조, 종류, 동작 등을 나타내고 객체를 생성하는 일종의 틀, 클래스의 멤버에 필드와 메소드가 있다. ●자바(java) 프로그램의 기본 구조 class 클래스명{ public static void main(String []args){ 내용.. 2012. 1. 30.
반응형