본문 바로가기

전체 글

(519)
Intellij Idea 에서 JUnit 사용하기. Intellij Idea 에서 JUnit 연동하고 사용하기. intellij 가 버전업이 되면서 기존에 maven 프로제트 생성했을때 main 과 같은 depth 에서 자동으로 생성되던 test 디렉토리가 사라졌다. 이제 단위테스트를 하기 위해서는 수동으로 test 디렉토리를 생성해주어야 한다. 개발환경 JDK 1.8 Spring Framework 4.3.7 RELEASE MAVEN 3 Windows 10 프로젝트 환경설정에서 src 밑에 test > java 를 생성하고 java 디렉토리를 Tests 로 설정을 해준다. 소스상에서 테스트를 원하는 클래스명 위에 커서를 올린다음 alt + enter 를 치면 메뉴가 출력되는데 그중에서 create test 로 테스트할 클래스를 생성한다. destinati..
Spring Framework 과 Redis 연동 Spring Framework 과 Redis 연동하기. NoSQL 이란 Big data 를 처리하기 위한 분산 데이터 저장소를 통칭하며, Redis 는 key-value 형태의 데이터 저장소를 지원하는 NoSQL 의 일종이다. CAP(Consistency, Availability, Partition Tolerence) 특징중에서 CP 에 더 가까운 고속의 읽기/쓰기에 최적화 된 모델이다. 개발환경 JDK 1.8Spring Framework 4.3.7 RELEASEMAVEN 3Windows 10 Windows 용 Server 구동 Redis 는 Linux, Unix, MacOS 는 지원하지만 Windows 는 정식으로 지원하지 않는다. Windows 용 서버는 개발/스터디 용도로만 사용해야 한다. ......
Spring Framework 과 RMI 연동 Spring Framework 과 RMI 연동하기. RMI 는 JDK 1.1 부터 추가되었고 한때는 CORBA, EJB 와 함께 분산 시스템을 구축하기 위한 기술로써 사용되었으나 Java 에 국한되는 단점이 있었고 SOA, ROA 등의 개념을 탑재한 다른 기술들이 널리 사용되면서 현재는 많이 사용되고 있지는 않다. server 를 POJO 형태로 간단하게 띄우는 방법도 있고 Spring Framework 에 통합되어 제공하는 방법도 있다. POJO 샘플은 Java 책마다 기본적으로 제공되므로 Spring Framework 과 통합해서 Server / Client 로 사용하는 방법을 정리한다. Spring Framework 에서는 RMI 기능의 많은 부분을 자동화해서 내부적으로 지원하며 개발자(사용자)는 ..
Spring Framework 과 ActiveMQ 연동 Spring Framework 과 ActiveMQ 연동하기. 간단한 비동기화 로직은 스프링에서 제공하는 async annotation 을 사용해서 처리가 가능한데 대용량 데이터를 비동기로 안정적으로 처리하기 위해서는 메시지 서비스의 일종인 ActiveMQ 를 연동해서 사용한다. 전체적인 process 를 간략하게 설명하자면, Application Server 에서 listener container 를 구현하고 구현한 listener 를 통해서 ActiveMQ 와 통신한다. Application Server 에서 listener container 로 domain object 를 던져주면 converter 에서 jms message 로 변환해서 ActiveMQ 에 전달하고 ActiveMQ 로 부터 받은 jm..
Spring Security Spring Security 스프링 2.x 버전 사용할때 security 살펴보고 10여년 만에 다시 볼려니 세월이 많이 지나서 다 잊어버렸고 실제 프로젝트에서는 spring security 보다는, authentication 은 자체 로직으로 처리하고 authorization 은 admin 에서 설정하는 방법을 많이 사용하다보니 spring security 는 점점 사용하지 않게 되었다. 이번 프로젝트에 spring security 를 적용해보고자 오랜만에 삽질을 하면서 article 을 정리해본다. 내가 원하는 기능은 1. 비밀번호 암호화해서 비교. - Sha256 을 이용한 암호화. 2. admin, user role 별로 페이지 접근 제어. 3. remember me 기능 적용. - 쿠키 또는 d..
유시민 항소이유서 전문 본 피고인은 1985년 4월 1일 서울지방법원 남부지원에서 폭력행위 등 처벌에 관한 법률 위반으로 징역 1년 6월을 선고 받고 이에 불복, 다음과 같이 항소이유서를 제출합니다. 다음 본 피고인은 우선 이 항소의 목적이 자신의 무죄를 주장하거나 1심 선고형량의 과중함을 호소하는데 있지 않다는 점을 분명히 밝혀두고자 합니다. 이 항소는 다만 도덕적으로 보다 향상된 사회를 갈망하는 진보적 인간으로서의 의무를 다하려는 노력의 소산입니다. 또한 본 피고인은 1심 판결에 어떠한 논란거리가 내포되어 있는지 알지 못하며 알고 싶은 생각도 없습니다. 자신의 행위의 정당성을 판단하는 기준으로서 본 피고인이 관심을 두고 있는 것은 하느님이 주신 양심이라는 척도이지 인간이 만든 법률은 아니기 때문입니다. 법률에 대한 전문지식..
정치와 권모술수. 사람은 정치적이면서도 사실은 정치적인 사람을 싫어한다. 우리가 정치적인 사람이라고 하는 사람들의 유형은 일반적으로 윗사람의 기분을 잘 맞춰준다거나 자신의 이익을 관철하기 위해서 여기저기 영향력을 행사하려 한다던가 온갖 이간질을 일삼는 사람이라고 생각하고 있다. 사람은 정치적인 동물이기때문에 살면서 정치는 반드시 필요하다. 특히 조직의 리더이거나 장(將)의 경우 정치는 더욱 더 필요하다. 자신의 정치력에 의해서 조직의 존재여부가 결정된다. 정치의 원래 의미는 여러 인간 집단들 간의 상이한 의견들을 소통하고 조율해서 본인이 원하는 방향으로 이끌어가는 것을 의미한다. 조직의 리더라면 반드시 해야 하는 의무중에 하나다. 우리가 정치적인 사람이라고 하는 것들은 알고보면 정치가 아니라 권모술수를 의미하는 경우가 많..
트레일화 갈아타기. 아디다스 테렉스에서 아식스 젤-후지트라부코로 갈아 탐. 둘 다 고어텍스 재질에 테렉스는 22만원정도, 후지트라부코는 14.9만원. 15만원 아래로 제대로 된 고어텍스 트래킹화라니 믿을수가 없다. 아디다스 테렉스 시리즈는 밑창에 노브가 큼직하게 달려서 접지력이 좋을듯 한데 의외로 내구성이 약해서 데일리로 신고 다닐 경우 빨리 닳는편이다. 사실 접지력도 썩 마음에 드는건 아니다. 사람 발바닥이 평면이 아니듯이 노브도 시간이 가면서 바닥창 전체가 골고루 닳는것이 아니라 걸을때 바닥에 먼저 닿는 부분부터 닳기 때문에 노브가 큼직하고 내구성이 약한 테렉스 같은 경우는 울퉁불퉁하게 닳아서 보기에도 좋지 않고 걸을때 불편할때도 있다. 반면 젤-후지트라부코는 큼지막한 노브 대신에 잘 설계된 패턴창이 전체적으로 적용되어..