study
-
스프링 입문 6. 프레젠테이션 층의 설계와 구현
09 Apr 2019 - breadkey
스프링 MVC의 개요
스프링 MvC와 MVC2 패턴
J2EE 패턴의 FrontController 패턴을 기초로 하지만 클래스가 역할별로 분명하게 분리되고, 클래스간 관계가 느슨하다. 각 Model View Controller는 인터페이스가 정의되며 상호간 의존이 없다.
스프링 MVC와 어노테이션
스프링 1부터 포함됐지만 학습할 내용이 많았고 설정의 확장이 복잡해 주목받지 못했다. 하지만 스프링 2.5에서 어노테이션을 채용했을 때 부터 클래스에 @Controller 어노테이션만 선언하면 되고 실행 메서드의 매핑도 @RequestMapping 어노테이션만 설정해주면 되므로 매우 간단해졌다.
tag: spring -
스프링 입문 5. 비즈니스 로직 층의 설계와 구현
13 Mar 2019 - breadkey
도메인 모델인지, 트랜잭션 스크립트인지에 관계 없이 업무 처리(비즈니스 로직)을 하는 것이 비즈니스 로직 층의 주요 역할이다. 오목형 레이어와 DI를 활용하면 데이터 액세스나 웹을 경유하는 기술 처리를 비즈니스 로직 층 이외의 층에 맡길 수 있다. 하지만 비즈니스 로직과 밀접한 관계가 있는 트랜잭션 처리는 비즈니스 로직 층에서 잘 대응해야 한다.
tag: spring -
IntelliJ에서 Maven을 활용하여 Spring 개발환경 구축하기
12 Mar 2019 - breadkey
Maven이란?
아파치 재단에서 개발하는 Java용 프로젝트 관리 도구이다. 팀의 의사소통 기능도 제공하며 빌드에 관한 기능들을 제공하여 빌드 도구도 된다. 또한 라이브러리 관리도 pom.xml 파일을 통해 할 수 있다.
tag: java intellij maven spring -
스프링 입문 4. 데이터 액세스 층의 설계와 구현
26 Jan 2019 - breadkey
데이터 액세스 층과 스프링
주요 역할은 데이터 액세스 처리를 비즈니스 로직 층에서 분리하는 것이다. 데이터 액세스를 분리하지 않으면 소스코드에 로직과 데이터 액세스가 섞여 가독성이 매우 떨어지고 지저분해진다.
DAO 패턴이란?
데이터의 취득과 변경 등의 데이터 액세스 처리를 DAO라고 하는 오브젝트로 분리하는 패턴이다. 데이터 액세스 방식이 바뀌어도 DAO만 변경하면 되므로 비즈니스 로직에는 영향을 주지 않고 처리할 수 있다.
DAO 클래스는 보통 데이터베이스의 테이블별로 만들어진다. 기본적으로 테이블에 대한 단순한 CRUD를 갖춘 형태가 된다. 비즈니스 로직이 포함되지 않는 단순한 소스 코드이므로 테이블 정의 정보를 바탕으로 DAO를 자동 생성하기도 한다.
tag: spring -
스프링 입문 3. 스프링 AOP
20 Jan 2019 - breadkey
공통화할 수 있는 처리는 오브젝트 안에 없는 편이 소스 코드의 가독성도 좋아지고 컴포넌트로서의 역활도 명확해진다. 테스트도 쉬워진다.
어떤 오브젝트가 원래 하지 않아도 될 로깅이나 트랜잭션 등의 처리를 그 오브젝트에서 분리해서 별도의 오브젝트로 구현하는 기술이다.tag: spring -
스프링 입문 2. 스프링 DI
16 Jan 2019 - breadkey
DI란?
인터페이스를 이용해 컴포넌트화를 실현하는 것이다. DI를 직역하면 의존관계 주입으로, 쉽게 말해 오브젝트 사이의 의존 관계를 만드는 것이다. 오브젝트의 어떤 프로퍼티에 그 오브젝트가 이용할 오브젝트를 설정한다는 의미이다.
DI를 구현하는 컨테이너는 의존성 주입 밖에도 클래스의 인스턴스화 등의 생명 주기 관리 기능이 있는 경우가 많다.
인터페이스를 사용하지 않는 간단한 예를 들어 설명하면, 포켓몬 정보를 가져오고 갱신하는 등 관리할 수 있고 포켓몬 종족값의 총합을 계산해주는 포켓몬 도감 웹 애플리케이션을 생각해보자.
소스코드tag: spring -
스프링 입문 1. 스프링과 웹 애플리케이션
10 Jan 2019 - breadkey
스프링의 최신 정보
스프링의 역사
2002년 등장
2006년 SSH(스트럿츠, 스프링, 하이버네이트)구성으로 웹 애플리케이션 프레임워크로 이용현재는 스트럿츠 < 스프링MVC
tag: spring
project
-
안드로이드 체스 앱 프로젝트 2 -Server ER Diagram-
08 Apr 2019 - breadkey
erDiagram User }|--o{ Game : plays User ||--o{ RankRecord : has Game }o--o{ RankRecord : captures Game ||--o{ Move : logstag: spring