2015/12/02

무료 online IDE 제공 사이트


많은 개발언어별 online IDE(컴파일러 지원)와 튜토리얼을 제공하는 사이트.
간단하게 코드 테스트 또는 최소화,포맷지정 등 유용하게 사용할 수 있다.

2015/09/17

미술치료

http://www.healingfeeling.co.kr/

방문 미술치료 전문
· 현재 스트레스와 갈등 진단
· 습관과 행동성향 진단
· 몸과 마음의 긴장완화
· 긍정적 사고와 행동으로 자신감 향상
· 부모와 상담을 통한 공감과 소통
· 아이의 특성에 맞는 교육법 마련

2015/09/08

Eclipse - Plugin - AnyEdit Tools

Eclipse Marketplace Search "AnyEdit Tools"
Install New Software url = http://andrei.gmxhome.de/eclipse/

AnyEdit Tools Plugin을 설치하면 Eclipse Editor에서 변수를 카멜표기법(camel notation)으로 쉽게
변환(단축키 - ctrl + alt + k)할 수 있다.
일반적으로 VO 변수는 DB의 컬럼ID를 주로 사용하는데 대문자와 underline(_)의 조합으로 이루어져 있다.
예를 들면 THIS_IS_MY_FIELD_NAME 라는 변수가 있다면 단축키를 누를 때 마다 thisIsMyFieldName -> this_is_my_field_name 으로 자동 변경이 된다.

또한 AnyEdit Tools Plugin은 다른 다양한 기능을 제공하는데 이클립스 Formatter를 사용하지 않고도 저장 시 줄 끝 공백을 자동으로
지워주거나, Tab <-> Space 변환을 제공하기도 한다.

자세한 설명은 링크 참조.

설치 후 Window > Preferences > General > Editors > AnyEdit Tools 에서 추가적인 설정을 할 수 있다.

2015/08/19

전자정부프레임워크 Batch_IDE 정리

1. 정의

    일괄처리 애플리케이션 구현 시 개발자 편의성을 위해 일괄처리 작업(Job) 템플릿 생성 또는 구성 정보들을 쉽게 설정할 수 있는 마법사를 제공하는 환경

2. Batch Job 구성

  • 입력 리소스 : Job의 종류에 영향
File(SAM) - 전자정부 프레임워크 가이드에는 4종류가 제시되는데 사용법에 따라서는 6가지도 가능할 것으로 보임
DB           - 전자정부 프레임워크 가이드에는 4종류가 제시되는데 사용법에 따라서는 6가지도 가능할 것으로 보임
  • 실행 환경 : 유형별 Job Runner에 의해서 아래 세가지 환경으로 동작
Scheduler - 일반적으로 Quartz 스케줄러 를 사용하여 실행
CommandLine - 콘솔의 입력값으로 실행
Web - 웹 화면에서 실행
  • 처리 구현 : 생략가능(실제 생략해 본 적은 없음)
Process - 비지니스 로직 처리
Mapper(VO)
  

3. Batch Job Core

  • Job Runner : 외부모듈과 Job Launcher 연결. 필요에 따라 구현 필요하며 전자정부 프레임워크에서는 표준 Batch Runner 제공.
EgovSchedulerRunner - Job을 직접 실행시키는 것이 아닌 Scheduler를 실행
EgovCommandLineRunner
EgovBatchRunner
  • Job Detail : Job의 상세내용(로직)을 기술하는 jobClass로써 해당 클래스는 개발자 구현 필요.

¤ 참고 : 링크의 샘플은 Spring 2.5(전자정부 프레임워크 아님)에서 Scheduler를 이용한 배치 처리 구현 소스임.

2015/05/08

Spring 설정파일 분리방법

1. 개요

프로젝트는 개발단계에 따라 개발자 개발환경, 개발서버, 운영서버로 환경이 나뉘어 집니다.
그러나 비즈니스 로직, OS 차이 등 환경에 종속적이지 않은 프레임워크가 구현 되어야 합니다.

개발자 PC는 Window, 서버(개발/운영)는 Linux 또는 Unix라면 디렉토리 경로 구분자 부터 차이가 납니다.
그런데 프레임워크에서는 유니크한 속성명만 지정하도록 제공했음에도 불구하고 환경과는 무관하게 특정 경로에 파일 업로드가 되어야하고,
결제 테스트를 하더라도 테스트/운영별 결제모듈 호출 URL이 달라야 하지만 결제로직은 동일하게 처리가 되어야 합니다.

예를 들어 환경설정 파일에 "file.uploadPath"라는 속성을 등록하고 로직에서는 해당 속성의 값을 읽어서 파일업로드 저장 경로지정 기능을 구현했더라도
운용환경(개발자 PC/개발서버/운영서버)이 어디든지 같은 결과가 나와야 합니다.
- Window : "C:\file\upload"
- Linux/Unix : "/usr/local/file/upload"

2. 접근법

개발언어 만으로는 방법이 없다(?).
운용환경에 영향을 받는다.
그러면... vm 환경변수를 이용해 볼까?

3. 해결책

서버 환경변수(vm argument)에 특정 값을 등록하고(local/dev/live 등) 설정파일과 로직에서는 해당 서버환경변수를 이용하여 구분하는 겁니다.

Step1. 서버의 경우 WAS startup.sh 또는 .bat 파일에 해당 변수를 추가합니다.






















Step2. org.springframework.beans.factory.config.PropertiesFactoryBean을 지정합니다.

Step3. 서버별 환경변수 등록합니다.

Step4. org.springframework.core.io.support.PropertiesLoaderUtils을 이용합니다.

Step5. 프로그램에서 로직 구현 시, 등록된 환경변수를 유틸리티 클래스의 static메서드 인자로 지정하면 운용환경에 상관없이 등록된 경로로 파일업로드가 됩니다.


아시는 분들은 아시는 내용이지만, 관련 자료가 흔하지 않았기에 이번 코어 작업하면서 적용했던 내용을 정리합니다.
물론 Spring 버전이 업그레이드 된 만큼 프레임워크를 업그레이드 할 때에는 달라질 수 있습니다.

참고자료1 : http://bit.ly/1AzJyWQ
참고자료2 : http://bit.ly/1AzJWVs

2015/03/23

구글의 9가지 채용 기준


구글은 어떤 기준으로 직원을 뽑을까?

어떤 사람을 뽑으며 어떤 사람을 뽑지 않을까?

구글의 CEO 에릭 슈미트(Eric Schmidt)가 쓴 《How Google Works(구글은 어떻게 일하는가)》에 관련 내용이 있어 소개한다.


1.
여러분보다 유능하고 지식이 많은 사람은 채용하라.
Do hire people who are smarter and more knowledgeable than you are.

여러분에게 가르쳐줄 것이 없거나 도전하지 않을 사람은 채용하지 마라.
Don’t hire people you can’t learn from or be challenged by.


2.
제품과 문화의 가치를 높일 사람은 채용하라.
Do hire people who will add value to the product and our culture.

이 두 가지 가치에 기여하지 못할 사람은 채용하지 마라.
Don’t hire people who won’t contribute well to both.



3.
일을 해낼 사람을 채용하라.
Do hire people who will get things done.

문제점만 생각하는 사람은 채용하지 마라.
Don’t hire people who just think about problems.



4.
집중적으로 자신에게 동기를 부여하는 사람, 열정을 가진 사람을 채용하라.
Do hire people who are enthusiastic, self-motivated, and passionate.

단순히 일자리를 원하는 사람은 채용하지 마라.
Don’t hire people who just want a job.



5.
동료들에게 영감을 주며 일할 사람을 채용하라.
Do hire people who inspire and work well with others.

혼자 일하기 좋아하는 사람은 채용하지 마라.
Don’t hire people who prefer to work alone.



6.
여러분의 팀이나 회사와 더불어 성장할 사람을 채용하라.
Do hire people who will grow with your team and with the company.

기술이나 관심사가 편협한 사람은 채용하지 마라.
Don’t hire people with narrow skill sets or interests.



7.
성격이 원만하면서도 독특한 관심과 재능을 가진 사람을 채용하라.
Do hire people who are well rounded, with unique interests and talents.

오로지 일하기 위해 사는 사람은 채용하지 마라.
Don’t hire people who only live to work.



8.
윤리적이고 개방적으로 소통하는 사람을 채용하라.
Do hire people who are ethical and who communicate openly.

정치적이거나 속임수를 쓰는 사람은 채용하지 마라.
Don’t hire people who are political and manipulative.



9.
뛰어난 지원자를 발견할 때만 채용하라.
Do hire only when you’ve found a great candidate.

기준 이하의 것에 만족하지 마라.
Don’t settle for anything less.

Eclipse Plugin - Glance : Text search with highlihgting

Eclipse Marketplace url = http://eclipse-glance.googlecode.com/svn/site/

Glance is about incremental text search with highlighting. That's what you can use in every modern browser and so miss in Eclipse. Glance is simple and powerful. And it works almost with any rich component which you can see inside your Eclipse.
And even more:
* it's fast and never blocks your text box
* it works in editors, views and dialogs; rich texts, tables and trees
* automatically update matches if content will be changed
* customizable search (from case sensitivity to regular expressions)
* can index trees to find hidden matches
* supports GEF/GMF!
Just few shortcuts you need to remember:
* open: CTRL+CMD+F on Mac and CTRL+ALT+F on other platforms
* next match: ENTER; previous match: SHIFT+ENTER
* close: ESC
  • 설치 및 설정
  1. Eclipse Marketplace에서 glance 검색 > Glance X.X.X install
  2. Window > Preferences > General > Glance Search : 아래 이미지에서 붉은 박스 안의 두 항목 체크
  3. 찾을 단어를 입력하면 기본 주황색과 노란색으로 highlight 됩니다.



Eclipse Plugin - JRebel : JVM Hot Swap

JRebel은 java소스/xml설정파일 수정 후 서버 재기동 없이 JVM Hot Swap(Hot Deploy?) 기능을 제공하여, 변경 즉시 반영이 되도록 해주는 plugin입니다.
자세한 내용은 홈페이지 참조하세요.

Plugin 설치는 Eclipse Marketplace에서 상위에 노출되어 있으니 바로 install 하면 됩니다.
설치 후 라이센스를 등록하여 활성화 시켜야 하는데, 기본정책은 유료이지만
https://my.jrebel.com 에서 SNS연동 회원가입 절차를 거치면 개발자용(non-commercial) 라이센스 키가 발급됩니다.

1. Eclipse Marketplace 에서 Plugin 설치
2. https://my.jrebel.com 에서 SNS연동 회원가입
3. 개발자 라이센스 획득 및 Eclipse에 적용 후 JRebel 활성화
4. Eclipse JRebel Config Center 환경 설정(Server/Project)






2015/02/06

Oracle 백업/복구

exp user_id/user_password@tnsname file=filename.dmp log=filename.log full=y statistics=none

imp user_id/user_password@tnsname file=filename.dmp log=filename.log full=y ignore=y

2015/01/08

웹접근성 국가표준 기술 가이드 요약

웹 접근성 향상을 위한 국가표준 기술 가이드(방송통신위원회) 요약


  • 텍스트가 아닌 콘텐츠는 그의미나 용도를 이해할 수 있도록 대체텍스트를 제공해야한다.
  • 멀티미디어 콘텐츠에는 자막, 원고 또는 수화를 제공해야 한다.
  • 콘텐츠는 색에 관계없이 인식될 수 있어야 한다.
  • 지시사항은 모양, 크기, 위치, 방향, 색, 소리 등에 관계없이 인식될 수 있어야 한다.
  • 텍스트 콘텐츠와 배경 간의 명도 대비는 4.5대 1 이상이어야 한다.
  • 자동으로 재생되는 배경음을 사용하지 않아야 한다.
  • 모든 기능은 키보드만으로도 사용 할 수 있어야 한다.
  • 키보드에 의한 초점은 논리적으로 이동해야 하며 시각적으로 구별할 수 있어야 한다.
  • 시간제한이 있는 콘텐츠는 응답시간을 조절할 수 있어야 한다.
  • 자동으로 변경되는 콘텐츠는 움직임을 제어할 수 있어야 한다.
  • 초당 3~50회 주기로 깜빡이거나 번쩍이는 콘텐츠를 제공하지 않아야 한다.
  • 콘텐츠의 반복되는 영역은 건너뛸 수 있어야 한다.
  • 페이지, 프레임, 콘텐츠 블록에는 적절한 제목을 제공해야 한다.
  • 링크 텍스트는 용도나 목적을 이해할 수 있도록 제공해야 한다.
  • 주로 사용하는 언어를 명시해야 한다.
  • 사용자가 의도하지 않은 기능(새 창, 초점 변화 등)은 실행되지 않아야 한다.
  • 콘텐츠는 논리적인 순서로 제공해야 한다.
  • 표는 이해하기 쉽게 구성해야 한다.
  • 입력 서식에는 대응하는 레이블을 제공해야 한다.
  • 입력 오류를 정정할 수 있는 방법을 제공해야 한다.
  • 마크업 언어의 요소는 열고 닫음, 중첩 관계 및 속성 선언에 오류가 없어야 한다.
  • 콘텐츠에 포함된 웹 애플리케이션은 접근성이 있어야 한다.

* 웹 접근성 연구소 홈페이지 : http://www.wah.or.kr