Programming/과거포스팅 (127) 썸네일형 리스트형 [JPA] - JPA의 시작[기본코드] JPA의 시작 책을 구매하면 기본적으로 김영한님의 예제 소스를 볼 수 있다. 하지만 예제 코드를 보기만 하는거보다 익숙해 질 수 있는 방법은 그 코드를 직접 작성해 보는 거라고 생각한다. 그래서 김영한님의 코드를 참고해서 코드를 작성할 것이다. 실제 JPA를 사용할 때는 대부분 Spring Boot와 사용할 것이다. 하지만 JPA를 자세히 알기 위해서 순수 자바 코드로 어떻게 JPA가 동작하는지 알아볼 것이다. 예제 코드는 H2 DB를 사용해서 구현할 예정이다. 기본코드는 이번 포스팅에서 한 번만 구현하며 앞으로 나올 코드는 해당 코드에 덧붙여 나가는 식으로 작업하도록 하겠다. 요즘 이클립스에서는 기본적으로 메이븐 플러그인이 설치되어 있으니 별도의 플러그인을 설치할 필요는 없다. Maven프로젝트를 생성.. [JPA] JPA란? JPA란? 최근들어 우리나라에서도 JPA가 점점 보편화 되고 있다. JPA는 상당히 오래전에 나온 훌륭한 기술이지만 우리나라에 상륙하기까지는 상당히 오랜 시간이 걸렸다. 이미 10년도 전에 나오고 자바 진영의 ORM 기술 표준이지만 상당한 진입장벽 덕분에 보급이 더디었는데 최근 몇년 사이에 여러 기업에서 기본스펙으로 지정하면서 알려지기 시작했다. 사실 그렇게까지 어려운 기술이 아니긴 하지만 SI개발로 찍어내기식의 개발자가 많은 우리나라에서는 상당히 부담이 될 수 있는 기술이다. 하지만 언제까지고 새로운 기술을 거부하지는 못한다. 그리고 몇개월 전 각종 세미나에서 JPA를 널리 알려주신 김영한님이 JPA와 관련된 책을 내면서 좀 더 많은 개발자가 좀 더 쉽게 JPA를 접할 수 있게 되었다. 나도 이 책을 .. [Jhipster] IntelliJ연동하기 -jhipster 설치 jhipster 프로젝트생성 jhipster를 정상적으로 설치했다면 프로젝트를 생성해보자yo jhipster라는 명령어를 입력하면 jHipster 프로젝트를 생성할 수 있는데 몇가지 질문에 답변을 하는 식으로 프로젝트를 생성 할 수 있다. 어플리케이션명 패키지명 어떠한 라이브러리들을 사용할꺼냐 등 셋팅을 위한 질문들이다.모두 입력하고나면 입력한 내용에 맞춰서 프로젝트가 생성된다. UI만 사용하다 커맨드로 사용하니깐 어색하긴 했지만 더 편리한거 같다. 프로젝트 생성에는 시간이 좀 걸린다. IntelliJ와 연동은 별게 없다. 이렇게 생성된 프로젝트를 IntelliJ로 열기만 하면 된다. File->Open->Jhipster로 생성한 프로젝트가 있는 디렉토리 선택 프로젝트를 실행시키면 다음과 같은 화면을 볼.. Jhipster intelij 설정하기 - jhipster 설치 jhipster 설치 이번 프로젝트에서 jhipster를 사용하기로 했다. jhipster는 springboot + angularjs의 기본기능을 갖춘 프로젝트를 생성해준다고 보면 된다.jhipster를 사용하는 이유는 jhipster가 구성해주는 프로젝트 구조가 지금까지 내가 설정한 프로젝트 구조보다 더 좋다는 판단이 들어서이다. jhipster는 npm을 통해 설치를 해야한다. 그렇기 때문에 node.js 최신버전이 설치되어 있어야 하고 설치되어 있더라도 예전 버전의 npm 이면npm install -g npm 명령어를 통해서 npm을 최신버전으로 업데이트 해주어야 한다. jhipster를 설치하는 방법은 jhipster site에 잘 나와있다. https://jhipster.github.io/ins.. MongoDB 설치하기 이제 몽고디비 공부를 본격적으로 하기에 앞서서 MongoDB를 설치하도록 하겠다.개발환경은 윈도우를 기준으로 작성한다. https://www.mongodb.com/download-center#community 위의 사이트로 가면 OS별 MongoDB를 다운 받을 수 있다. 현 시점 MongoDB의 최신 버전은 3.2.11버전이다. 몽고디비를 설치하고 난 뒤 실행방법은 쉽다.나의 몽고디비 경로는 C:\Program Files\MongoDB\Server\3.2\bin이다.몽고 디비 경로를 컴퓨터 환경변수로 등록하면 바로 몽고디비 명령어를 사용할 수 있다 mongo.exe 를 실행시키기전 mongd라는 명령어를 사용하여 몽고db서버를 시작하고 mongo라는 명령어를 통해서 몽고디비 쉘을 사용하면 된다. mon.. 몽고디비 스터디 시작 오랜만에 스터디를 시작했다. 주제를 RDBMS 튜닝으로 정했지만 데이터를 구하기가 만만치 않아서 유행이 지나긴 했지만 NoSQL에서 가장 유명한 몽고 디비와 인메모리 디비인 레디스를 주제로 잡았다. 레디스는 개발에 직접 적용해본 친구가 있어서 교제없이 진행하기로 하고 몽고디비는 MongoDBinAction 책을 선정해서 진행하기로 하였다. 3장까지는 개별적으로 공부하기로 정하고 진행하였다. 블로그는 개별적으로 진행하며 팀에서 작성하는 위키는 아래와 같다.https://github.com/KWSStudy/Mongodb/wiki 위의 위키를 참조하면 몽고디비란 무엇인지 대략적으로 알 수 있다. 이 블로그에는 실습 위주의 포스팅을 하겠다.2016-11-21일 기준으로 작성하기 때문에 이글을 보는 날짜가 기간이.. 인터페이스의 역할 인터페이스의 역할 상속을 통한 구조는 두 클래스의 관계가 생각보다 긴밀하다. 하지만 인터페이스를 도입하면 두 개의 클래스가 서로 긴밀하게 연결되어 있지 않도록 중간에서 추상적인 느슨한 연결고리 역할을 할 수 있다. 추상화란 것이 공통적인 성격을 뽑아내어 따로 분리해내는 작업이다. 인터페이스는 자바가 추상화를 위해 제공하는 가장 유용한 도구이다. 인터페이스는 자신을 구현한 클래스에 대한 구체적인 정보는 모두 감춰버린다. 오브젝트를 만들기 위해서 구체화된 클래스는 하나를 지정해야 하지만 그 클래스가 무엇인지는 몰라도 된다. 프록시 패턴(Proxy Patterns) - 객체 접근을 제어하기 프록시 패턴정의어떤 객체에 대한 접근을 제어하기 위한 용도로 대리인이나 대변인에 해당하는 객체를 제공하는 패턴클라이언트에서 메소드 호출시 호출을 중간에 가로채어 메소드 호출/ 접근제한등을 한다.프록시 종류원격(Remote Proxy) 프록시가상(Virtual Proxy) 프록시동적(Dynamic Proxy) 프록시보호(Protection Proxy) 프록시원격(Remote Proxy) 프록시다른 jvm에 들어있는 객체의 대변인에 해당하는 로컬 객체.프록시의 메소드를 호출하면, 그호출이 네트워크를 통해 전달되어 원격객체의 메소드가 호출, 결과는 프록시를 통해 클라이언트에게 전달됨. 가상(Virtual Proxy) 프록시생성비용이 많이드는 객체를 대신하는 역할.진짜 객체가 필요하기 전까지 객체의 생성을 미루.. 이전 1 2 3 4 5 ··· 16 다음