본문 바로가기

Spring

(22)
Mybatis 이용한 회원정보 CRUD 실습 Mybatis에서 제공하는 메서드 SqlSession 클래스 메서드 기능 List selectList(query_id) id에 대한 select문을 실행한 후 여러 레코드를 List로 반환 List selectList(query_id, 조건) id에 대한 select문을 실행하면서 사용되는 조건도 전달 T selectOne(query_id) id에 대한 select문을 실행한 후 지정한 타입으로 한 개의 레코드를 반환 T selectOne(query_id, 조건) id에 대한 select문을 실행하면서 사용되는 조건도 전달 Map selectMap(query_id, 조건) id에 대한 select문을 실행하면서 사용되는 조건도 전달한다. Map 타입으로 레코드를 반환 int insert(query_id,..
Spring - Mybatis Mybatis 사용 이유 애플리케이션이 기능이 복잡해짐에 따라 기존의 JDBC로 개발하지 않게되었다 기존JTBC로 개발 할 경우 반복적으로 구현해야할 쿼리문도 많을 뿐만 아니라 쿼리문도 복잡해진다. 자연스럽게 마이바티스(Mybatis)나 하이버 네이트 같은 데이터베이스 연동 관련 프레임 워크가 등장 하게 되었다. Mybatis 프레임워크 특징 쿼리문 실행 결과를 자바 빈즈 또는 Map객체에 매핑 해주는 Persisitence 솔루션으로 관리한다. 즉, 쿼리문을 소스코드가 아닌 XML로 분리한다. 쿼리문과 프로그래밍 코드를 분리해서 구현한다. 데이터소스(DataSource) 기능과 트랜잭션 처리 기능을 제공한다. Mybatis이용한 회원 기능 실습 SqlMapConfig.xml 데이터베이스 연동시 반환되는..
SpringMVC 스프링 프레임워크는 웹 애플리케이션 개발에 필요한 여러가지 기능을 미리 만들어서 제공한다. MVC 기능도 그중 하나이다. 스프링에서 지원하는 MVC 기능의 특징은 다음과 같다. Model2 아키텍쳐 방식 스프링과 다른 모듈과의 연계가 쉽다. 타일즈(tiles)나 사이트메시(sitemesh), 타임리프 같은 View 기술과 연계가 쉽다. 태그 라이브러리를 통해 message 출력, theme 적용 그리고 입력 폼을 보다 쉽게 구현 할 수 있다. - 스프링 프레임워크 구성 요소 - 구성 요소 설명 DispatcherServlet 클라이언트의 요청을 전달받아 해당 요청에 대한 컨트롤러를 선택하여 클라이언트의 요청을 전달 또한 컨트롤러가 반환한 값을 View에 전달하여 알맞은 응답을 생성 HandlerMappi..
스프링AOP - 스프링 AOP 관련 용어 - 용어 설명 aspect 구현 하고자 하는 보조 기능을 의미 advice aspect의 실제 구현체(클래스)를 의미한다. 메서드 호출을 기준으로 여러 지점에서 실행된다. joinpoint advice를 적용 하는 지점을 의미한다, 스프링은 method 결합점만 제공 한다. pointcut advice가 적용되는 대상을 지정한다, 패키지이름/클래스이름/메서드이름을 정규식으로 지정하여 사용한다. target advice가 적용되는 클래스를 의미한다. weaving advice를 주기능에 적용 하는 것을 의미한다. - 스프링 프레임워크에서 AOP 기능을 구현 하는 방법 - 스프링 프레임워크에서 제공하는 AOP 관련 API를 이용 하는 방법 어노테이션 이용 방법 @Aspect 어노..
스프링 - 웹 프로그래밍 구축 하기 위한 설계 모델 - Model 1 - 브라우저 -> (리퀘스트 요청) -> 리퀘스트 요청 정보에 따른 WAS(웹 어플리케이션 서버) 진행 -> HandlerAdapter 에서 Controller에 프로세스를 처리하기 가장 적합한 메소드를 찾아온다. HandlerAdapter에서 처리한 메소드를 통하여 ViewResolver에 요청하여 적합한 화면단을 찾는다. 적합한 화면 선택 후 화면 응답 생성을 하게된다. - DispatcherServlet 설정 방법 - 인텔리제이 기준 web/WEB-INF/web.xml 파일 생성 web.xml 파일 내 , 태그를 이용 하여 서블릿 생성 초기화 파라미터에서 스프링 설정 파일을 지정 해주지 않았을 경우 서블릿 별칭을 이용하여 스프링 컨테이너가 자동 생성된다. - Contorller 객..
어노테이션을 이용한 의존성 주입 세팅방법 xml 파일을 사용 하지 않고 JAVA 클래스 파일 내 어노테이션을 이용한 xml 파일을 사용 하지 않고 의존성 주입을 대체 할 수 있다. 사용방법 MemberConfig.java 의존성 주입을 사용 할 java 클래스 파일 @Configuration 어노테이션을 이용하여 스프링 의존성 주입을 java 클래스 파일 내에서 대체한다. @Bean java 클래스 파일 내에서 의존성 주입을 사용하는 어노테이션 xml 파일에서 기능과 동일하다. 생성자 의존성 주입방법 Getter/Setter 의존성 주입 방법 List Type 의존성 주입 방법 ArrayList, HashMap을 사용 하여 의존성 주입이 가능하다. MemberConfig.java 클래스 내에서 의존성 사용 방법 AnnotationConfigAp..
의존객체 선택 방법 Spring 에서는 다수의 빈(Bean) 객체중 의존 객체의 대상이 되는 객체를 선택 해주어야 한다. 대상을 명시 해주지 않을시 익셉션 오류가 발생하게 된다 WordDao 에 대한 의존 객체(Bean)을 여러개 생성했다고 가정하게 된 후 서비스 클래스에서 @Autowired를 사용하여 의존객체 자동 주입을 사용하게 되면 생성한 빈 객체에 대해 매칭이 제대로 되지 않았다는 wordDao1, wordDao2, wordDao3에 대한 익셉션이 발생하게 된다. 이경우 동일한 객체가 2개 이상인 경우 스프링 컨테이너는 자동 주입 대상 객체를 판단하지 못하여 익셉션이 발생된다. 이러한 오류를 해결 하기 위해서는 applicationContext.xml 파일 내에서 qualifier 속성을 지정 해주어야 한다. qu..
의존 객체 자동 주입 스프링 설정 파일에서 의존 객체를 투입할때 또는 태그로 의존 대상 객체를 명시하지 않아도 스프링 컨테이너가 자동으로 필요한 의존 대상 객체를 찾아서 의존 대상 객체가 필요한 객체에 주입 해 주는 기능이다. 구현 방법은 @Autowired와 @Resource 어노테이션을 이용해서 쉽게 구현 할 수 있다. @Autowired 주입 하려고 하는 객체의 타입이 일치 하는 객체를 자동으로 주입한다. @Resource 주입 하려고 하는 객체의 이름이 일치 하는 객체를 자동으로 주입한다. 생성자에는 사용 할 수 없으며 메소드나 프로퍼티에만 사용 가능하다. @Autowired와 @Resource 같은 경우 디폴트 생성자는 필수로 사용 해주어야 한다. 의존 객체 자동주입 사용 방법은 Xml 파일 내 Context 관련된..