본문 바로가기

java

JNI 만들기 JNI를 사용하여 c코드 삽입하기 JNI(Java Native Interface)란 자바에서 다른 언어로 만들어진 소스를 접근하여 실행하게 하거나 반대로 다른 언어에서 자바 코드를 접근해서 사용할 수 있도록 하기 위한 하나의 징검 다리 역할을 하는 기법을 말한다. 1. JNI를 사용하기 위한 절차 라이브러리 로딩 Native Method를 선언하는 자바 클래스 작성 및 컴파일 javah를 사용하여 Native Method가 사용할 헤더 파일 생성 C언어로 Native Method 작성 및 컴파일 자바 프로그램 실행 2. JNI 구현 세부 절차 1) 라이브러리 로딩 어떤 native method를 사용할 것인지를 선언해야 하며 이는 Native Method를 동적으로 할당받기 위해 사용되어 진다. 따라서 .. 더보기
JNI (Java Native Interface) 란 ? 1. JNI (Java Native Interface) 란 ? - 자바가 다른 언어로 만들어진 어플리케이션과 상호 작용할 수 있는 인터페이스를 제공한다. - 자바가상머신(JVM)이 원시 메소드(native method)를 적재(locate)하고 수행(invoke)할 수 있도록 한다 - JNI가 자바가상머신내에 포함됨으로써, 자바가상머신이 호스트 운영체제상의 입출력, 그래픽스, 네트워킹, 그리고 스레드와 같은 기능들을 작동하기 위한 로컬시스템호출(local system calls)을 수행할 수 있도록 한다. * 쉽게 말해 Java와 다른 언어를 연동하는 솔루션입니다. [그림1] C로 만들어진 Library와 JAVA를 연결해주는 JNI 2. Why do you need JNI ? 자바 네이티브 메쏘드(Ja.. 더보기
웹인증을 요구하는 사이트에 http 헤더 설정하기 웹서버에서 제공하는 웹인증을 사용하는 사이트에 http요청을 보낼땐 헤더에 다음 항목을 추가해야 한다. Authorization: BASIC d2VibWFzdGVyOnpycW1hNHY= BASIC 이후에 오는 문자열은 username:password를 BASIC64 방식으로 인코딩한 내용이다. 자, 그럼 어디 java 코드로 한번 볼까? String auth= "Basic " + new sun.misc.BASE64Encoder().encode((username + ":" + password).getBytes()); URL url = new URL(urlString); URLConnection httpConnection = url.openConnection(); httpConnection.setReques.. 더보기
Struts2 Guide site http://struts.apache.org/2.0.14/docs/guides.html 여기서 설정부분(Configuration)을 보면 초기 설정을 할수있다~ 더보기
Mock 객체를 이용한 TDD 백명석(기술위원회), 2007년 1월 초록(Abstract) 객체지향으로 어플리케이션을 개발하다 보면 특정 객체를 구현하다가 그 객체가 종속성을 갖는 다른 객체들이 아직 완성되지 않아서 몰두하여 구현하던 객체를 잠시 버려두고 종속성을 갖는 다른 객체를 구현해야 하는 경우가 발생한다. 만일 종속성을 갖는 객체가 다른 개발자나 팀에 의해 개발되어야 한다면 기다려야만 한다는 더 안 좋은 문제가 발생한다. 이 노트에서는 이러한 경우 종속성을 갖는 객체를 Mock 객체로 대체하여 개발자가 현재 자신이 몰두하고 있는 객체에만 전념하여 개발을 진행할 수 있는 방법을 알아본다. 서론 # 먼저 Mock 객체의 필요성에 대해 알아보고, 이 노트에서 설명을 위해 사용할 예제에 대해 알아본다. TDD와 Mock 객체 # 이 .. 더보기
log4j의 초간단 사용법 - 날짜별, 패키지(클래스)별, 파일생성 log4j의 초간단 사용법 - 날짜별, 패키지(클래스)별, 파일생성 로그 찍는 거 별로 안좋아하는데 로그를 찍어보니까 더 좋은 것 같아요 ^^ 게다가 log4j라는 매우 우수한 로그찍는 프로그램이 있습니다. sysout에서 벗어나봅시다-_-; 습관적으로 sysout을-_-(System.out.println()......-_-) 우선 이클립스에서 프로젝트를 하나 만들어봅시다. log4j를 받아봅시다. http://logging.apache.org/log4j/1.2/download.html 1.2버전입니다. 받아서 log4j-1.2.15.jar파일을 라이브러리에 추가합시다. log4j설정파일을 만들어봅시다. 최상위 폴더에다가 log4j.properties파일을 만듭시다. # Log4j Setting file.. 더보기
Log4J 란 Log4J 란? - apache 진영에서 나온 오픈소스 - 로그 메시지를 콘솔, 텍스트파일, html파일, xml 파일, 이메일등으로 전송 가능 - Logger(category) : 로그 파일을 작성하는 클래스, Appender 에 메시지를 전달 - Appender : 로그를 출력하는 위치 (ex)ConsoleAppender, FileAppender.. - Layout : Appender 로 로그를 생성하기 전에 메시지의 형식을 만드는 클래스 Log4J 설정파일 - log4j.properties(ç가장 사용하기 쉽고 직관적임) - log4.xml - java source Logger -- 로깅레벨 - DEBUG < INFO < WARN < ERROR < FATAL Appender Properties u .. 더보기