Programming (208) 썸네일형 리스트형 Spring Data JPA Spring Data JPA 스프링 프레임워크를 이용했을 때 얻을 수 잇는 장점 중에 하나는 기존의 다른 프레임워크들과의 통합이 가능하다는 점이다.스프링 프레임워크는 기본적으로 다른 프레임워크들과의 대립이 아닌 융합을 선택했기 때문에 각종 프레임워크들과의 통합을 위한 '어댑터(Adaptor)'들을 지원한다. 따라서 개발의 편의를 도와주는 추가 기능들이 많다. 과거 JDBC에서 ORM(Object Relational Mapping)까지 'Spring Data'라는 하위 프로젝트를 통해 다양한 방식의 개발을 지원하고 있다. Spring Data JPA는 JPA(Java Persistence API)라는 기술을 스프링에서 개발할 수 있도록 돕는 라이브러리이다.이를 이용하면 다양한 데이터 베이스에서 종족적인 S.. Lombok 라이브러리 Lombok 라이브러리는 Java 코드를 컴파일할때 자동으로 추가 메서드를 만들어 컴파일해 주는 라이브러리라고 할 수 있다. Lombok은 설정(표시) 어노테이션을 기준으로 '.class' 파일을 만들 때 getter/setter 등을 자동으로 추가하도록 만들 수 있기 때문에 개발자의 입장에서는 약간의 어노테이션을 추가하기만 하면 된다. Getter/Setter 메서드를 생성하거 toString(), 생성자 함수를 생성하는 등의 일상화된 작업의 반복을 자동화함으로써 개발 시간을 단축할 수 있다. Lombok의 어노테이션 @NotNull Null값이 될수 없다는 것을 명시. NullPointerException에 대한 대비책 @Cleanup 자동으로 close() 메서드를 호출하는 역할 @Getter/Se.. 도메인 주도 설계(소개) 도메인 주도 설계 도메인주도설계에서의 모델의 유용성1.모델과 핵심 설계는 서로 영향을 주모 구체화된다.2.모델은 모든 팀 구성원이 사용하는 언어의 중추다.3.모델은 지식의 정수만을 뽑아낸 것이다. 소프트웨어의 본질은 해당 소프트웨어의 사용자를 위해 도메인에 관련된 문제를 해결하는 능력에 있다.그밖의 매우 중요하다 할수 있는 기능도 모두 이러한 기본적인 목적을 뒷받침하는데 불과하다.도메인이 복잡하면 이 같은 문제 해결은 유능하고 숙련된 사람의 집중적인 노력이 필요한 어려운 일이 된다.개발자는 업무 지식을 증진하기 위해 도메인 연구에 물두해야 한다. 그뿐만 아니라 모델링 기법을 연마해서 도메인 설계에 통달해야 한다. 예제선박화물의 운송 예약을위한 애플리케이션 Voyage(운항) ------ Cargo(화물).. JAVA EE 자바는 1996년 초반 1.0버전 출시 이후 급속히 보급되었다.메모리 관리, 포인터 등 복잡한 C/C++ 언어를 대신할 새로운 프로그래밍의 언어를 원하던 시기였기에 타이밍은 좋았다.많은 개발자가 금세 자바 프로그래밍을 시작했고, 이들을 자바로 전환시킬 일등공신은 애플릿(applet)이었다.애플릿은 웹 브라우저에서 별도 프로세스로 실행 가능한 작은 애플리케이션으로 HTML/CSS만으로는 불가능한 일을 웹 사이트에 추가할 수 있었다.(예 실시간 반응하는 그래프나 스트리밍 비디오 피드)인터넷이 빠르게 팽창하면서 정적 웹 페이지는 낡고 따분한 유물로 전략했고 사람들은 더 빠르고 화려한 웹 서핑을 원했다.애플릿을 쓰면 사용자와 대화하면서도 정적인 월드 와이드 웹(WWW)에 유려하고 멋진 효과나 액션을 넣을 수 있.. 스프링3 XML를 이용한 설정 XML을 이용한 설정DaoFactory는 그 DI의 동작원리를 잘 활용한 독립적인 오브젝트 팩토리 클래스로 시작했지만, DI컨테이너인 스프링을 도입하면서부터 애노테이션을 추가해서 DI 갖업에 참고하는 일종의 참고정보로 사용되고 있다.본격적인 범용 DI컨테이너를 사용하면서 오브젝트 사이의 의존정보는 일일이 자바코드로 만들어주려면 번거롭다.DaoFactory를 자세히 살펴보면 대부분 틀에 박힌 구조가 반복된다.또한 DI 구성이 바뀔때마다 자바코드를 수정하고 클래스를 다시 컴파일하는 것도 귀찮은 작업이다.스프링은 DaoFactory와 같은 자바 클래스를 이용하는 것외에도, 다양한 방법을 통해 DI 의존관계 설정정보를 만들수 있다.가장대표적인 것이 XML이다.XML은 단순한 텍스트 파일이기 때문에 다루기 쉽다... 스프링 3 의존관계 주입(DI)의 응용 의존관계 주입의 응용런타임 시에 사용 의존관계를 맺을 오브젝트를 주입해준다는 DI 기술의 장점은 무엇?오브젝트 팩토리가 바로 이 DI방식을 구현한 것이니, 앞서 설명한 모든 객체지향 설계와 프로그래밍의 원칙을 따랐을 때 얻을 수 있는 장점이 그대로 DI 기술에도 적용될 것이다.코드에는 런타임 클래스에 대한 의존관계가 나타나지 않고, 인터페이스를 통해 결합도가 낮은 코드를 만들므로, 다른 책임을 가진 사용 의존관계에 있는 대상이 바뀌거나 변경되더라도 자신은 영향을 받지 않으며, 변경을 통한 다양한 확장 방법에는 자유롭다는게 지금까지 설명한 장점이었다.D사와 N사에 UserDao의 코드를 판매하는 경우가 아니더라도 UsrDao와 ConnectionMaker 사이에 적용된 DI는 여러가지 방법으로 유용하게 활.. 스프링 3 의존관계 주입(DI) 의존관계 주입(DI) 제어의 역전(IoC)과 의존관계 주입객체지향적인 설계나, 디자인패턴, 컨테이너에서 동작하는 서버 기술을 사용한다면 자연스럽게 IoC를 적용하거나 그 원리로 동작하는 기술을 사용하게 될 것이다.DaoFactory처럼 객체를 생성하고 관계를 맺어주는 등의 작업을 담당하는 기능을 일반화한 것이 스프링의 IoC 컨테이너이다.IoC가 매우 느슨하게 정의돼서 폭넓게 사용되는 용어로 스프링을 IoC 컨테이너라고만 해서는 스프링이 제공하는 기능의 특징을 멱확하게 설명하지 못한다.스프링이 서블릿컨테이너처럼 서버에서 동작하는 서비스 컨테이너라는 뜻인지,단순히 IoC 개념이 적용된 템플릿 메서드 패턴을 이용해 만들어진 프레임워크인지,또 다른 IoC특징을 지닌 기술이라는 것인지 등 파악하기 힘들다.스프링.. 자바 원시타입 원시타입 Java Data Type ㄴ Primitive Type ㄴ Boolean Type(boolean) ㄴ Numeric Type ㄴ Integral Type ㄴ Integer Type(short, int, long) ㄴ Floating Point Type(float, double) ㄴ Character Type(char) ㄴ Reference Type ㄴ Class Type ㄴ Interface Type ㄴ Array Type ㄴ Enum Type ㄴ etc. int, boolean, double 같은 각각의 기본 타입을 원시타입이라고 한다.원시 타입들은 항상 값이 있는 상태로 null이 될수 없다.원시 타입을 정의할 때 값이 할당되지 않았다면 그 변수는 기본값 자료형비트 수범위 기본값boolea.. 이전 1 ··· 14 15 16 17 18 19 20 ··· 26 다음