소소한개발팁
반응형
article thumbnail
Spring MVC
프레임워크/Spring 2020. 1. 6. 17:57

MVC(Model-View-Controller) 패턴의 개념 모델-뷰-컨트롤러(Model-View-Controller,MVC)는 소프트웨어 공학에서 사용되는 아키텍쳐 패턴으로 MVC패턴의 주 목적은 Business logic과 Presentation logic을 분리하기 위함이다. MVC패턴을 사용하면, 사용자 인터페이스로부터 비지니스 로직을 분리하여 어플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있음 Model: 애플리케이션의 정보(데이터,Business Logic 포함) View : 사용자에게 제공할 화면(Presentation Logic) Controller: Model과 View 사이의 상호 작용을 관리 각각의 MVC ..

Spring JDBC
프레임워크/Spring 2020. 1. 3. 18:47

데이터 액세스 공통 개념 DAO(Data Access Object) 패턴 * 데이터 액세스 계층은 DAO패턴을 적용하여 비즈니스 로직과 데이터 액세스 로직을 분리하는 것이 원칙이다. * 비즈니스 로직이 없거나 단순하면 DAO와 서비스 계층을 통합할 수도 있지만 의미 있는 비즈니스 로직을 가진 엔터프라이즈 애플리케이션이라면 데이터 액세스 계층을 DAO패턴으로 분리해야 한다. *DAO 패턴은 서비스계층에 영향을 주지 않고 데이터 액세스 기술을 변경할 수 있는 장점을 가지고 있다. 커넥션 풀링을 지원하는 DataSource 컨넥션 풀링은 미리 정해진 개수만큼의 DB 컨넥션을 풀에 준비해두고 , 애플리케이션이 요청할 때마다 Pool에서 꺼내서 하나씩 할당해주고 다시 돌려받아서 Pool에 넣는 식의 기법이다. 다..

JUnit , Sprint Test
프레임워크/Spring 2020. 1. 3. 17:56

jUnit의 특징 * TDD의 창시자인 Kent Beck과 디자인 패턴 책의 저자인 Erich Gamma 가 작성했다. * 단정(assert)메서드로 테스트 케이스의 수행 결과를 판별한다. 예) assertEquals(예상 값,실제 값) *jUnit4부터는 테스트를 지원하는 어노테이션을 제공한다. @Test @Before @After *각 @Test 메서드가 호출할 때마다 새로운 인스턴스를 생성하여 독립적인 테스트가 이루어지도록 한다. @Test @Test가 선언된 메서드는 테스트를 수행하는 메소드가 된다. JUnit은 각각의 테스트가 서로 영향을 주지 않고 독립적으로 실행됨을 원칙으로 하므로 @Test마다 객체를 생성한다. @Ignore @Ignore가 선언된 메서드는 테스트를 실행하지 않게 된다. @..

STS(SpringSource Tool Suite)
프레임워크/Spring 2019. 12. 24. 21:02

Spring 개발업체인 SpringSource 가 직접 만들어 제공하는 이클립스의 확장판으로 최신 이클립스를 기반으로 주요한 Spring 지원 플러그인과 관련된 도구를 모아서 Spring 개발에 최적화되도록 만들어진 IDE이다. STS가 제공하는 기능 1.Bean 클래스 이름 자동완성 2.설정파일 생성 위저드 Bean 설정파일 생성 위저드 중 사용할 Namespace와 Schema 버전을 선택 가능하도록 함 3.Bean 의존관계 그래프 Spring IDE는 XML 설정 파일을 읽어서 자동으로 그래프 그려줌 각 Bean이 어떻게 참조되고, 어떤 Property를 갖는지 알 수 있음 4.AOP 적용 대상 표시 Spring IDE의 XML설정 파일 편집기를 이용하면 AOP대상을 손쉽게 확인할 수 있다. Mav..

Spring Framework 특징과 전략
프레임워크/Spring 2019. 12. 24. 20:26

Portable Service Abstraction, DI, AOP, POJO Portable Service Abstraction (서비스 추상화) 트랜잭션 추상화, OXM추상화, 데이터 액세스의 Exception 변환 기능 등 기술적인 복잡함은 추상화를 통해 Low Level의 기술 구현 부분과 기술을 사용하는 인터페이스로 분리한다. 객체지향과 DI(Dependency Injection) 의존관계 주입 Spring은 객체지향에 충실한 설계가 가능하도록 단순한 객체 형태로 개발할 수 있고, DI는 유연하게 확장 가능한 객체를 만들어 두고 그 관계는 외부에서 다이내믹하게 설정해준다. AOP(Aspect Oriented Programming) AOP는 애플리케이션 로직을 담당하는 코드에 남아 있는 기술 관련..

Spring - MyBatis 와 스프링 연동
프레임워크/Spring 2019. 12. 19. 20:56

MyBatis 는 흔히 SQL Mapping 프레임 워크로 분류되고 , JDBC 코드의 복잡하고 지루한 작업을 피하는 용도로 많이 사용됩니다. JDBC 프로그램 1. 직접 Connection을 맺고 마지막에 close() 2. PreparedStatement 직접 생성 및 처리 3. PreparedStatement 의 setXXX()등에 대한 모든 작업을 개발자가 처리 4. SELECT의 경우 직접 ResultSet처리 MyBatis 1. 자동으로 Connection close()기능 2. MyBatis 내부적으로 PreparedStatement 처리 3. #{prop} 와 같이 속성을 지정하면 내부적으로 자동처리 4. 리턴 타입을 지정하는 경우 자동으로 객체 생성 및 ResultSet 처리 MyBati..

반응형