반응형

프로그래밍(~2017)/자바 16

[Java] 리플렉션에 대한 재고

Java 리플렉션에 대한 재고(reflection)(1) 일상에서의 리플렉션(reflection)이란 거울 속에 비친 자신의 모습입니다. 프로그래밍 세상에서의 리플렉션은 프로그램이 자신의 모습을 보고 심지어 수정하기 까지 하는 것을 말합니다. Java reflection API는 바로 그런 기능을 언어의 기본 요소인 클래스, 필드, 메소드를 들여다 볼 수 있는 평범한 Java API를 통해 제공합니다. 리플렉션을 이해하는 것은 여러분이 자주 사용하는 툴을 이해하는데 도움이 됩니다. Eclipse가 어떻게 자동완성으로 메소드 이름을 만들어 줄까? Tomcat은 web.xml파일에 있는 클래스 이름을 가지고 웹의 요청을 처리할 서블릿을 실행하는 걸까? Spring은 어떻게 마술 같은 dependency in..

자바 제네릭 관련 정리

자바 제네릭 관련 정리JAVA/제네릭 관련 정리 2008/11/12 13:16 Generics 제너릭 타입(Generic Types)은 주로 자바 컬렉션에서 많이 사용되고 있다. 컬렉션은 자료구조이다. 컬렉션에는 어떤 자료를 담을지 알 수 없으므로 최상위 객체인 Object형태로 저장되고 관리되도록 설계되어 있다. 하지만, 의도하지 않은 자료형이 담기는 경우도 발생하게 된다. 이 때의 오류는 컴파일시에는 알 수가 없고 실행을 시켜보아야만 알 수 있다는 것이 문제점이었다. 제너릭 타입을 사용하면 프로그래머가 원하는 객체의 타입을 명시해서 의도하지 않은 객체는 저장될 수 없도록 컴파일시에 오류를 확인할 수있게 된다. 제너릭클래스 정의하기 제네릭 클래스를 정의하는 방법은 일반적인 클래스를 정의하는 것과 동일하..

[자바] Base64 인코딩,디코딩

Java 뿐 아니라 개발자라면 한번쯤은 접해봤을법한 Base64 인코딩... Base64의 인코딩 원리는 아래의 글을 확인해 주시고... 2009/02/23 - [정보보안/암호학] - Base64 인코딩 원리 Java 에서 Base64 인코딩을 하기 위해서는 기본적으로 Java에서 제공하는 클래스를 이용하는 방법과 Apache Commons Codec 의 Base64 클래스를 사용하는 방법이 있다. 먼저 자바에서 기본적으로 제공하는 Base64 인코딩... static 메서드가 아니기 때문에 객체 생성후 호출을 해야하고 decoding의 경우 예외처리까지 해야하는 불편함이 있다. import java.io.IOException; import sun.misc.BASE64Decoder; import sun...

자바에서 문자열 인코딩 방식 바꾸기

new String(바이트 배열,인코딩방식); 예) byte b[]={12,45,12,45,78}; new String(b,"utf-8"); b에 있는 바이트 값들이 utf-8로 되있다는 것을 알려주는 것이다. 즉 utf-8 을 unicode로 변환시켜준다. 예) String str = "테스트"; byte b[]=str.getbytes("utf-8"); str.getbytes() 함수는 문자열을 바이트 배열로 반환시키는 함수이다. getbytes 함수안에 문자 형식을 지정하면 지정된 문자 형식으로 바꾸어 바이트 배열로 반환시킨다. 즉 자바가 사용하는 unicode 문자열을 utf-8로 바꾸어 바이트배열로 반환한다. (리눅스 서버와 자바 클라이언트 프로그래밍시 문자 인코딩 방식이 달라서 사용했던 방법이다..

반응형