본문 바로가기

자바

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)를 쓰면.. 더보기
JAVA I/O (자바입출력) - 자바 스트림(Stream) A. 스트림이란 1. 스트림(Stream)은 파일이나 키보드, 모니터 등의 입출력 장치나 네트워크, 메모리등으로부터 데이터를 입출력할 때 사용하는 처리를 정의해 둔 것 2. 스트림이라는 영어 어원처럼 (시냇물) 양방향이 아니고 단방향이다. 데이터 처리가 많을때는 지연 될 수도 있다. B. Stream의 종류 1. 바이트 스트림(byte stream) - 1바이트씩 전송 * 존재 이유 : 컴퓨터는 2진수로 데이터 처리, 진수라는것은 bit를 의미 8bit가 1byte이므로 바이트 스트림 존재 * 주로 하드웨어 접근 할때는 바이트 스트림으로 처리 * 가장 큰 부모 클래스(추상) : InputStream, OutputStream 2. 캐릭터 스트림(character stream) - 2바이트씩 전송 * 문자 .. 더보기
토비의 스프링 드디어 토비의 스프링 3.0 다 읽었다.. 사실 뒤에 15~16은 대충 읽었지만.. 대학다닐때의 전공서적 만큼 두꺼운 이 책..처음 라면 받침대로 쓰다가 본격적으로 읽기 시작한건 4개월 전 부터...퇴근후 틈틈히 읽고 1부 예제는 거의다 따라 했는데. 현재 머리 속에 남는건 많이 없다..ㅡ.ㅜ 그래도 스프링 DI에 대한 개념을 파악 할 수 있었다. 가장 힘든건 AOP 정말 아직까지도 개념 정리가 잘 안된다. 전처리 후처리 할때 좋다고 하니 다시 봐야겠다. 목표는 새로 토비의 스프링 3.1을 사서 올해 안에 두번 더 보는것~ 이제 간단한 게시판 하나 만들어 봐야겠다. 더보기
AOP 용어(스프링 - spring) 근데 이해가 거의 안된다..아직까지는... AOP 용어 타깃타깃은 부가기능을 부여할 대상이다. 핵심기능을 담은 클래스일 수도 있지만 경우에 따라서는 다른 부가기능을 제공하는 프록시 오브젝트일 수도 있다.어드바이스어드바이스는 타깃에게 제공할 부가기능을 담은 모듈이다. 어드바이스는 오브젝트로 정의하기도 하지만 메소드 레벨에서 정의할 수도 있다.조인 포인트조인 포인트join point란 어드바이스가 적용될 수 있는 위치를 말한다. 스프링의 프록시 AOP에서 조인 포인트는 메소드의 실행 단계 뿐이다. 타깃 오브젝트가 구현한 인터페이스의 모든 메소드는 조인 포인트가 된다.포인트컷포인트컷이란 어드바이스를 적용할 조인 포인트를 선별하는 작업 또는 그 기능을 정의한 모듈을 말한다. 스프링 AOP의 조인 포인트는 메소드.. 더보기
jUnit에서 assertTha과 is에 대한 import문 import static org.hamcrest.CoreMatchers.*; // is, notNullValue.. import static org.junit.Assert.*; // assertThat, fail... 이클립스에 등록하기 http://blog.naver.com/civan/150069226814 더보기
간단한 스프링 웹 프로젝트 생성 STS에서는 두가지 방법으로 스프링 웹 프로젝트를 생성할 수 있다.첫째는File -> New -> Spring Template Project이다. 대신 관련 라이브러리 및 빌드는 Maven을 이용해야 한다. 두번째는 Dynamic Web Project로 생성해서 관련 라이브러리를 WebContent/WEB-INF/lib에 추가하고 web.xml파일로 부터 설정 파일을 수정해주는것이다. 하지만 두번째로 할때 생성시 web.xml파일이 없을때도 있는데 생성할때 조건 체크를 해주면 생성이 된다. 더보기
Bluej로 자바(java)익히기 - 오브젝트, 클래스, 메소드(Object, class ,method) 첫번째 문단은 영어 뒤는 한글 번역. 1. 클래스 이해하기(Understanding class definitions) A. fields B. constructors (includg default) C. parameters D. assignment statements E. accessor methods F. Javadoc comments A. 필드 B. 생성자(디폴트 생성자 포함) C. 파라미터 D. 값 입력 E. getters메소드 F. 자바 document - Words with a special meaning in the language e.g) public, class, private, int - Also known as reserved words - 프로그래밍 언어에서 특별한 의미를 같는 단어들 .. 더보기
2013 년 2월 트위터에서 인기있는 컴퓨터 프로그래밍 랭귀지 2013년도 2월 트위터 상(Jobs Tractor)에서 가장 있기있는 컴퓨터 프로그래밍 랭귀지는 자바로 선정됐다. (출처 : http://jobstractor.com/monthly-stats) PHP도 자바 못지 않게 많은 수의 Job들이 트위터 상에서 나타났다. 역시 Java가 갑인가 보다. 하지만 난 지금 PHP를 하고 있어서 약간 걱정이 됐는데 그나마 안심이다. 그 뒤를 안드로이드와 애플 Objective C가 따르고 있다. 하지만 이 통계는 트위터 상의 자료 일뿐 다른 조사 방법에 의한 데이터와는 틀릴 수도 있다. 전체 데이터 통계는 아래 사이트에서 조사해보면 현재 전세계에서 가장 잘 나가는 프로그래밍 랭귀지를 파악할수있다 (하지만 여기서도 자바는 1등이다) http://www.tiobe.com.. 더보기
자바 추상 (JAVA abstraction) She gave a question. what is abstraction. I said that abstracting the same codes or methods that classes have and then putting them to a new method or a class and then she said OK. Whoa~ How poor my writing is.~ 더보기
BlueJ로 자바(java) 기본 익히기 - 설치 BlueJ라는건 내가 한번도 안써 봤었던거다. 처음에 신입때는 에디트 플러스를 썼으면 그후 이클립스가 나오면서 쭉~ 이클립스만 사용했었다. 그러다가 요즘 저녁에 자바 수업을 2개월 동안 듣고 있는데(목적은 영어공부~) 여기서 BlueJ를 이용해서 수업을 한다. 대략 처음 software development에 발을 들여 놓는 사람들으르 위한 툴인것 같다. 일단 BlueJ를 얻기 위해선 www.bluej.org 에 접속해야 한다. (모든게 영문이니 알아서..~) 그러면 좌측 메뉴에 download를 클릭하면 다운로드를 받는 페이지로 넘어간다. 그리고 자신의 OS에 맞는것을 골라 선택한다.(화면은 윈도우) 그리고 나서 다운 받은 아이템을 실행 시키고 next로 눌러서 설치 완료 하면 된다. 다 설치하면 바탕.. 더보기