객체지향 설계 원칙(SOLID)객체지향 기술은 어느 날 한 번에 만들어진 것이 아니다. 오랜시간에 걸쳐 점진적으로 발전 해온 기술이다.때문에 객체지향 기술을 받아들이고 적용하는 관점과기법에 차이가 조금씩 있다. 객체지향 설계 원칙은 객체지향의 특징을잘 살릴 수 있는 설계의 특징을 말한다.예외는 있겠지만 대부분의 상황에 잘 들어맞는가이드라인과 같은 것이다.디자인 패턴은 특별한 상황에서 발생하는 문제에 대한 좀 더 구체적인솔루션이라고 한다면 객체지향 설계 원칙은 좀 더 일반적인상황에서 적용 가능한 설계 기준이라고 볼 수 있다. 높은 응집도와 낮은 결합도응집도가 높다는 것은 하나의 모듈, 클래스가 하나의책임 또는 관심사에만 집중되어 있다는 것. 높은 응집도응집도가 높다는 것은 변화가 일어날 때 해당 모듈에서변..
이번 포스팅에서는 JSP에서 form태그로값을 보내고 컨트롤러에서 데이터를 처리하고 다시 화면으로 뿌려주는 것을 해보겠습니다.그리고 같이 @ModelAttribute 어노테이션을알아 보겠습니다. 먼저 jsp파일을 만들어서 form태그로 값을보내줄수 있도록 합니다.스프링을 공부하시는 분들이라면이미 JSP는 공부하셨을거라 생각하고form태그에 대한 자세한 설명은하지 않겠습니다. 먼저 index.jsp 생성합니다 1234567891011121314151617181920212223Insert title here 이름: 나이: 학년: Colored by Color Scriptercs 12line 에서 sysout은 context에 무슨값이담겨있는지 확인하기 위해 사용했습니다getContextPath메소드는 프로젝..
이번엔 @RequestParam 어노테이션을 이용해서데이터를 전송하는 방법에 대해 알아보겠습니다.설명보다 직접 테스트를 바로 해보겠습니다 실행시킬때는 이전포스팅 처럼get방식으로 직접 URL에 값을 넣어줘야합니다
이번엔 스프링에서 HttpServletRequest 클래스를이용해서 데이터를 전송하는 방법에대해 알아보겠습니다먼저 컨트롤러에 @RequestMapping 하나 추가해줍니다. 다음 views 에 test 폴더를 만들고test.jsp 파일 하나 만들어줍니다 다음 실행시켜봅니다 주소창에http://localhost:9080/ex/test/test를 쳐서 실행시키면 ID와 PW에 아무값도들어가 있지않습니다왜나하면 getParameter로 값을받을땐보통 form 태그 에서부터 값을 요청 하지만지금은 form 태그에서 넘어올 값이 없어아무런 값이 뜨지않습니다. http://localhost:9080/ex/test/test?id=12345&pw=67890위 get방식으로 값을 넣어줘야 값이 출력됩니다
먼저 스프링에서 MVC패턴을 사용하여 프로젝트를만드려면 MVC프로젝트를 만들어야한다생성방법은 아래와 같다 -- 먼저 프로젝트의 구조는 아래와 같다 다음 컨트롤러 클래스를 생성해야한다.최초 클라이언트로부터 요청이 들어왔을 때 컨트롤러로진입하게 된다. 그리고 컨트롤러는 요청에 대한작업을 한후 뷰쪽으로 데이터를 전달한다. 다음 @RequestMapping을 이요해 요청경로를 지정하고 요청처리 메소드를 구현후 뷰이름으로 리턴한다. 먼저 테스트를 해보자HomeController에 @RequestMapping을추가해 경로를 만든다 간단하게 3개만 만들어준다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484..
AOP란? 프로그래밍을 하다 보면 공통적인 기능이 많이 발생한다. 이러한 공통 기능을 모든 모듈에적용하기 위한 방법으로 상속을 많이쓴다하지만 몇가지 문제가 있다. JAVA에서는 다중 상속이불가능하여 다양한 모듈에 상속을 사용해 공통 기능을부여하는 것에는 한계가 있다.그리고 기능 구현부분에 핵심 기능코드와 공통기능 코드가 섞여 있어 효율성이 떨어진다. 이러한 상속을 통한 공통 기능부여에 한계가 있어AOP 라는것이 등장했다. AOP방법은핵심 기능과 공통 기능을 분리 시켜놓고, 공통 기능을필요로 하는 핵심 기능들에서 사용하는 방식이다. 먼저 AOP방법을 사용하려면 조금 생소한 용어를알아둬야한다. -Aspect : 공통기능-Advice : Aspect의 기능 자체-Jointpoint : Advice를 적용해야 ..
지금 까지는 xml파일로 DI를 설정했습니다이번엔 JAVA로 DI를 설정 해보겠습니다.먼어 사용되어야 하는 어노테이션이 있습니다@Configuration 과 @Bean 어노테이션입니다@Configuration는 클래스 앞에 붙이며"이 클래스는 스프링 설정에 사용되는 클래습니다"라고 명시해주는 어노테이션입니다@Bean은 Bean 객체 생성에 사용되는 어노테이션입니다 다음 3개의 클래스를 생성해줍니다먼저 Student 빈을 생성하겠습니다 123456789101112131415161718192021222324252627282930313233343536373839package com.spring.ex; import java.util.ArrayList; public class Student { private St..
DI의 장점 작은 규모의 프로젝트에서는 스프링의DI 를 사용 하는것보다 일반적인 방법을 사용해서개발하는 것이 더욱 빠르고 편합니다.하지만 규모가 어느정도 커지고 추후에 유지보수가필요하다면 DI를 이용한 개발이 필요합니다간단하게 DI사용에따른 장점에관한예를 만들어 보겠습니다. 먼저 메인클래스를 만들어줍니다12345678910111213141516package com.spring.ex; import org.springframework.context.support.AbstractApplicationContext;import org.springframework.context.support.GenericXmlApplicationContext; public class MainClass { public static ..