본문 바로가기
반응형

Java27

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 패키지, 스트림 ●스트림- 스트림은 하드웨어 장치로부터 데이터를 읽거나 기록할 때 사용하는 중간 매개체 역할을 하는 것이다. 자바에서 입출력은 스트림(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.
자바 네트워크 프로그래밍 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.
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.
poi xlsx 다운 ●예제 -1) {//response.setContentType("application/vnd.ms-excel");response.setHeader("Content-Disposition", "filename=" + fileName + ";");} else {response.setContentType("application/vnd.ms-excel");response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ";");} OutputStream fileOut = null; //워크북 생성XSSFWorkbook objWorkBook = new XSSFWorkbook();//워크시트 생성XSSFSheet objSheet = objW.. 2013. 12. 2.
jsp poi 기본 ●poi - java,jsp에서 데이터를 엑셀 등으로 추출, 또는 엑셀 등을 데이터로 저장할 때 사용한다. - http://poi.apache.org/ 에서 다운받은 파일을 압출 해제 후 WEB-INF 아래 lib에 넣는다. - 워크북 생성->워크시트생성->로우생성->셀 생성->셀에 데이터 넣기 순서로 이루어진다. ●hssf - .xls로 처리한다.xssf - .xlsx로 처리한다.sxssf - .xlsx로 처리한다. 위 두개는 데이터를 메모리에 담아서 한번에 처리하기 때문에 데이터가 많으면 메모리 부족현상이 나올수 있다. sxssf는 자동으로 메모리에 일정량의 데이터가 차면 메모리를 비워줘서 데이터가 많을 때 사용하면 좋다. ●poi 2점대 버전에서는 'HSSFCell.ENCODING_UTF_16'과 .. 2013. 9. 2.
안드로이드 ArrayList ●ArrayList - ArrayList는 링크드 리스트(linked list)라는 자료구조를 이용한 리스트로서 고정된 크기를 갖은 배열과 달리 임의로 데이터의 추가,삭제,변경등이 자유로운 배열 Class이다. - 다음과 같은 형식을 가진다 ArrayList 변수명 = new ArrayList(); -ex) ArrayList a = new ArrayList(); a.add(new Aaa()); //Class를 새로 생성해서 추가 a.add(new Aaa(1,2)); //Class가 파라미터를 받은 경우 int n = a.size(); //ArrayList에 저장된 요소의 개수 a.get(index); //해당 인덱스 위치의 요소 찾기 a.remove(index); //해당 인덱스 위치의 요소 삭제 a.c.. 2012. 6. 23.
안드로이드 버튼의 리스너 작성 ●엑티비티(Activity) 영역 1. 전역변수 선언 영역 2. 프로그램 초기화 영역 - onCreate() 메서드는 프로그램이 켜질때 한 번 실행된다. 이 부분은 변수에 초기값을 지정해주고 버튼 등의 컨트롤에 리스너를 연결하는 용도로 쓰인다. 3. 프로그램에서 반복적으로 사용할 영역 - 실제로 작성할 프로그램의 본체이다. 각종 연산과정과 처리결과를 화면에 표시하는 소스코드 등을 여기에 작성한다. ●버튼 리스너 작성 기본 1. 리스너 할당 2. 리스너 본체 ●예제 - EditText에 어떤 값을 입력한후 '확인' Button을 누르면 그 값이 TextView에 표시되는 예제 2012. 6. 20.
자바 난수 발생하기 ●random()함수나 Random 클래스를 이용해서 만든다. Random 클래스를 사용하는 경우, import java.util.*을 선언해줘야한다. ●double ran=Math.random(); //0< ran 2012. 6. 20.
변수명과 메서드명 작성 규칙 ●자기가 만든 프로그램이라도 몇 주만 지나면 다 까먹는다. 딱 정해진 규칙은 없지만 가독성과 프로그램 흐름을 기억 위해 될수 있으면 다음의 규칙을 따르는게 좋다. ●변수명 작성 규칙 - 변수명은 될 수 있으면 의미를 가진 단어를 사용한다. - 첫글자는 소문자로 시작한다. - 상수는 대문자를 사용한다. - 동사와 명사가 섞인 변수명을 작성할 때는 동사를 먼저 적는다. - boolean형의 변수는 접두어로 is나 can을 붙인다. - 반복문 등의 내부에서 사용하는 변수는 i,j,k를 사용한다. - class전체에 사용되는 class형의 변수는 접두어로 m이나 g를 붙인다. - 변수명 오른쪽에 그 변수가 무슨 의미인지 주석처리한다. ●메서드명 작성 규칙 - 하나의 메서드가 길어져 전체를 한 화면에 보기 곤란한.. 2012. 6. 17.
JSP 이클립스 개발 환경 구축(세팅) 1. JDK 설치하기 2. 환경변수 설정하기 3. 톰캣 설치하기 4. 이클립스 설치하기 5. 톰캣과 이클립스 연동 ------------------------------------------------------------------------------------------------ 1. JDK 설치하기 ① http://java.sun.com 에 들어간다 ② 상단 Download에서 java se, jdk를 다운 받아 설치한다. 2. 환경변수 설정하기 ①내 컴퓨터 -> 시스템 속성 -> 고급 -> 환경변수 ②변수이름 Path에다가 jdk설치경로에 있는 bin디렉토리 경로명을 제일 앞에 추가 하고 ' ;(세미콜론) '을 붙여준다. ③잘 되었는지 확인하려면 cmd 창에서 'javac -version' .. 2012. 3. 10.
자바(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.
안드로이드 애플리케이션 개발 환경 구축 1. java SDK 또는 JRE(Java Runtime Enviroment) - 개발툴을 실행하기 위한 Java VM 2. 이클립스(Eclipse) - 개발툴 3. Android SDK - 개발에 필요한 안드로이드 라이브러리 4. Developer Tools(Eclipse Plugin) - 개발에 필요한 이클립스 플러그인 형태의 개발도구 5. 이클립스 설정 1. java SDK 또는 JRE(Java Runtime Enviroment) ① 아래 주소에서 Java SE Development를 다운받아 설치한다 http://www.oracle.com/technetwork/java/javase/downloads/index.html ② 시스템 환경변수에서 "JAVA_HOME"을 설정한다 내컴퓨터->속성->설정변.. 2012. 1. 17.
반응형