Tiles is a composite view framework: it allows to reuse page pieces across the application. http://tiles.apache.org/ http://tiles.apache.org/framework/tiles-jsp/tlddoc/index.html Composit View Pattern 비슷한 구조를 가지고 생성되는 페이지들의 전형적인 사용법을 공식화 한다. 다른 페이지들이지만 다른 점은 오직 body부분 뿐이다. composite view pattern을 사용해서 다른 부분들은 재활용되고 레이아웃의 지속성이 보존한다. Aspect Composite View Decorator Reusability The different parts ..
Representational State Transer (REST) 2000년 발표, 2006년부터 이슈화 ROA(Resource Oriented Architecture)를 따르는 웹 서비스 디자인 표준 : 아키텍처가 아니라 잘못을 바로잡고 편해지기 위한 디자인 기준 리소스의 표현에 의해 어플리케이션의 상태가 전이되는 것을 의미 ROA (Resource Oriented Architecture) - 웹의 모든 리소스를 URI로 표현 - 모든 리소스를 구조적이교 유기적으로 연결 - 비상태 지향적 방법 - 정해진 method만 사용하여 리소스를 사용 REST에서 정의하는 주요 원칙 - 클라이언트 서버(웹으로 보면 브라우저 / 웹서버) : Stateless : 세션, 쿠키를 쓰지 않는다. - 보편적인 인터페이스..
Spring 3.0 의 특징 ● Java 5 지원 : annotaion 기반 configuration 지원을 제공한다. - Java 5 의 특징인 generics, annotations, varargs 등을 Spring에서 사용할 수 있다. ●새로운 표현 언어인 SpEL(Spring Expression Language)가 처음으로 소개되었다. - XML 과 Annotation 기반 bean definition을 정의하는데 사용된다. ●REST web services 를 지원한다. 참고문서 : RESTful Web services: The basics ●Data formatting이 정말 쉽다. - annotation 기반 포맷팅 지원 예> @DateFimeFormat(iso=ISO.DATE) @Numbe..
Request Processing Lifecycle DispatcherServlet - entry point of Spring 3.0 MVC - 보통 HttpServlet base class를 구현한 servlet 클래스이다. - web.xml에 구성된다. example org.springframework.web.servlet.DispatcherServlet 1 example *.html lifecycle of Spring 3.0 MVC 의 Request 처리 lifecycle: 1. client 가 http request 형태로 web containter에서 요청을 보낸다. 2. 들어온 요청은 Front controller (DispatcherServlet) 가 접수해서 적절한 Handler Mappi..
A NinePatchDrawable graphic is a stretchable bitmap image, which Android will automatically resize to accommodate the contents of the View in which you have placed it as the background. An example use of a NinePatch is the backgrounds used by standard Android buttons — buttons must stretch to accommodate strings of various lengths. A NinePatch drawable is a standard PNG image that includes an ex..
byte[] 를 String으로 변환하기 byte[] fl_bd = (byte[])map.get("FL_BD");//내용 가져오기 String contents= new String(fl_bd,"MS949"); java.lang.String.String(byte[] bytes, String charsetName) throws UnsupportedEncodingException Constructs a new String by decoding the specified array of bytes using the specified charset. The length of the new String is a function of the charset, and hence may not be equal to the ..
스트림(stream) 데이터를 바이트 단위로 순차적으로 입출력하는 흐름 시작점(source)과 종료점(sink)를 가지고 있다. => 흐르는 방향은 생성 시점에서 단일 방향으로 고정 파일 입출력의 기본 자바 스트림 자바 언어는 모든 파일을 순차적인 바이트의 배열, 즉 InputStream, OutputStream 클래스로 제공되는 스트림으로 처리한다. ■ 스트림 종류 입력스트림 : 시작점을 생성자의 인자값 출력스트림 : 종료점을 생정자의 인자값 필터스트림 : 스트림을 가공, 버퍼, 반환형, 라인, 데이터 등 ■ 입출력 클래스의 계층구조 참조(http://download.oracle.com/javase/6/docs/api/java/io/package-tree.html) 자바 표준 스트림(Standart J..
The char data type (and therefore the value that a Character object encapsulates) are based on the original Unicode specification, which defined characters as fixed-width 16-bit entities. The Unicode standard has since been changed to allow for characters whose representation requires more than 16 bits. The range of legal code points is now U+0000 to U+10FFFF, known as Unicode scalar value. (Ref..
원문 : 아이패드 독무대에 ‘허니콤’ 군단 대반격 구글이 태블릿피시 전용 운영체제인 허니콤을 완성했고, 여러 업체들이 허니콤 태블릿을 잇따라 선보이고 나섰다. 모토롤라의 줌, 엘지(LG)전자의 옵티머스패드, 삼성전자의 갤럭시탭 10.1 등이 이미 공개돼 상반기 중에 시장에 공급될 예정이다. 허니콤에서 선보인 태블릿 전용 사용자 환경(UI)은 이미 좋은 평가를 받고 있다. 다양한 제품의 경쟁을 통한 소비자 선택권 확대도 최대 장점이다. 9.7인치 한 종류의 제품만 내세운 애플과 달리, 7인치, 8.9인치, 10.1인치 등 다양한 크기와 제품별 기능 차별화가 가능하다
gluttony Don'ts WakeLocks를 과용하지 말라 Widgets을 과도하게 자주 업데이트 하지 말라 자신의 위치를 불필요하게 업데이트하지 말라 사용자나 시스템을 오버라이드하기위해 Services를 사용하지 말라 Dos 종복을 방지하기 위해 데이타를 공유하기 Services와 Threads 대신 Receivers와 Alarms을 사용하라 사용자가 업데이트를 관리하도록 하라 resource 내용을 최소화하라 Hostility 사용자 경험이 첫번째 우선순위이다. 사용자의 기대를 존중하라 원시경험을 가로채지 말라. 사용자의 환경을 존중하라. - 위치 데이타를 변경하기 전에 물어보기 Arrogance 문서화되지 않은 APIs를 사용하지 말라. 당신의 앱이 시스템과 끊임없이 동작하도록 하라 애플리케이션..
Android 3.0 is here!Android 3.0 is now available for the Android SDK. It offers a redesigned UI and all new developer APIs for an optimized experience on tablets and similar devices. For more information about what's in Android 3.0, read the version notes. If you have an existing SDK, add Android 3.0 as an SDK component. If you're new to Android, install the SDK starter package.
액티비티의 일생 생명주기(Life Cycle) 액티비티는 시작, 실행, 활성, 비활성화, 정지, 종료되는 일련의 상태를 순환하는데 이것을 생명 주기라고 한다. 사용자의 선택이나 시스템 자원 사정에 따라 액티비티의 상태는 끊임없이 바뀐다. 액티비티 스택 시스템이 태스크의 실행중인 액티비티를 관리한다. 스택의 액티비티는 넣고 빼기만 할 뿐 순서가 바뀌지 않는다. 액티비티 스택의 세 가지 상태 실행(active, running) 일시 정지(pause) 정지(stopped) 생명주기 메서드 메서드 해야 할 일 onCreate 액티비티 초기화 반드시 구현 onRestart 재시작될 때 호출, 특별히 할 일은 없다 onStart 액티비티가 사용자에게 보이기 직전에 호출된다. onResume 사용자와 상호작용하기 직..
액티비티간의 통신 인텐트의 Extras를 활용하여 액티비티간에 인수와 리턴값을 전달 액티비티01 public void startActivityForResult(Intent i, int requestCode) ;리턴값을 돌려주는 액티비티를 호출하기 requestCode : 호출한 대상을 나타내는 식별자, 0이상, 음수일 경우 리턴을 받지 않겠다는 뜻 proteted void onActivityResult(int requestCode, int resultCode, Intent data) ;호출된 액티비티가 종료되고 호출되는 메소드 requestCode : 호출할 때 전달한 코드 resultCode : 액티비티 실행 결과 data : 리턴값 액티비티02 onCreate에서 getIntent() 메서드로 액티비..
http://developer.android.com/reference/android/content/Intent.html 안드로이드의 컴포넌트끼리 통신하기 위한 전역적인 메시지 시스템 인텐트는 실행될 동작의 추상 명세서 사용 예 - startActivity 가 Activity를 실행하는 데 사용 - broadcastIntent가 관심있는 BroadcastReceiver 컴포넌트에게 보낼 때 사용 - startService(Intent)또는 bindService(Intent, ServiceConnection, int) 가 백그라운드 Service와 통신할 때 사용 인텐트 생성자 Intent() : 빈 인텐트 생성 Intent(Intent o) : 생성자 복사 Intent(String action) : 주어진..
액티비티를 추가하는 방법...매니페스트 파일에 등록하는 것을 잊으면 안된다!!! 새로운 액티비티의 레이아웃 XML 정의 액티비티의 코드를 java 파일에 작성 새로 추가한 액티비티를 메니페스트에 등록 startActivity 메서드로 액티비티를 호출 1. 새로운 액티비티의 레이아웃 XML 정의 2. 액티비티의 코드를 java 파일에 작성 3. 새로 추가한 액티비티를 메니페스트에 등록 보안상의 이유로 응용 프로그램에 포함된 모든 액티비티는 반드시 매니페스트에 등록되어야 한다. android:name 패키지명을 포함한 풀 경로, 같은 패키지에 속해 있을 때는 앞에 '.' 을 찍는다 android:label 액티비티 타이블 바에 표시될 내용 4. startActivity 메서드로 액티비티를 호출 Intent ..