본문 바로가기

전체 글

(205)
스프링 이메일 사용 스프링에서는 이메일 기능을 설정으로 쉽게 구현할 수 있다. pom.xml 1.6 4.1.1.RELEASE 1.6.10 1.6.6 스프링 버전 4.1.1로 변경 org.springframework spring-context-support ${org.springframework-version} javax.mail javax.mail-api 1.5.4 com.sun.mail javax.mail 1.5.3 mail-context.xml - 구글 SMTP 서버와 연동해서 실습하기 때문에 스프링의 JavaMailSenderImpl 클래스를 이용해서 메일 서버와 관련된 정보를 설정하도록 작성 smtp true true javax.net.ssl.SSLSocketFactory true - 구글 계정의 비밀번호가 아니라 ..
썸네일 이미지 사용 웹 애플리케이션에서 이미지를 표시할 때는 썸네일 이미지를 사용하는 경우가 많다. 만약 브라우저가 이미지를 모두 전달받는 경우, 표시할 이미지 개수가 많다면 시간이 오래 걸리게 될 것이다. 따라서 상품 목록에 이미지를 표시하는 경우에는 썸네일 기능을 사용해서 신속하게 표시할 수 있다. pom.xml commons-fileupload commons-fileupload 1.2.1 commons-io commons-io 1.4 net.coobird thumbnailator 0.4.8 쇼핑몰의 상품 목록 이미지 같은 경우 썸네일 이미지 파일을 따로 생성할 필요 없이 썸네일 이미지를 바로 다운로드하면 훨씬 빨리 표시할 수 있다. 파일을 업로드하고 썸네일 이미지로 출력되면서, 썸네일 이미지는 저장이 안되는 것을 확인..
다중 파일 업로드 스프링의 CommonMultipartResolver 클래스를 이용하면 여러 개의 파일을 한꺼번에 업로드할 수 있다. maxUploadSize 최대로 업로드 가능한 파일의 크기 설정 maxInMemorySize 디스크에 임시 파일을 생성하기 전 메모리에 보관할 수 있는 최대 바이트 크기를 설정 defaultEncoding 전달되는 매개변수의 인코딩을 설정 pom.xml commons-fileupload commons-fileupload 1.2.1 commons-io commons-io 1.4 파일 업로드에 필요한 라이브러리를 설치하도록 pom.xml을 작성 servlet-context.xml CommonsMultipartResolver 클래스를 빈으로 설정 위와 같이 아이디와 이름을 쓰고, 파일을 여러개 ..
메이븐과 STS 메이븐 다운받고 환경변수 설정 XML파일 설정하기 레거시 프로젝트의 pom.xml : 프로젝트 정보가 표시되고, 스프링에서 사용되는 여러 라이브러리를 설정해 다운로드 레거시 프로젝트를 생성하면 위와 같은 XML 파일들이 자동으로 생성된다. web.xml 다른 설정 파일을 읽어들이는 부분과 디스패쳐서블릿을 매핑하는 부분이 자동으로 만들어짐 contextConfigLocation /WEB-INF/spring/root-context.xml org.springframework.web.context.ContextLoaderListener appServlet org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/spring/..
스프링 애너테이션 기능 스프링 애너테이션 스프링 3.0부터는 DI와 같은 자바 코드와 관련된 설정은 직접 코드에서 할 수 있도록 애너테이션 기능을 제공한다. 현재 스프링 기반 애플리케이션에서는 XML에서 설정하는 방법과 애너테이션 기능을 사용하는 방법 두 가지를 혼합해서 사용하고 있다. 태그 기능 태그를 사용해 패키지 이름을 지정하면 애플리케이션 실행 시 해당 패키지에서 애너테이션으로 지정된 클래스를 빈으로 만들어준다. @Controller 스프링 컨테이너가 지정한 클래스를 컨트롤러 빈으로 자동 변환 @Service 스프링 컨테이너가 지정한 클래스를 서비스 빈으로 자동 변환 @Respository 스프링 컨테이너가 지정한 클래스를 DAO빈으로 자동 변환 @Component 스프링 컨테이너가 지정한 클래스를 빈으로 자동 변환 s..
스프링 트랜잭션 트랜잭션 기능 스프링은 트랜잭션 기능을 마이바티스 기능과 연동해서 사용한다. 트랜잭션 기능은 XML 파일에서 설정하는 방법과 애너테이션을 사용하는 방법이 있으며, 현재는 애너테이션으로 트랜잭션을 적용하는 방법이 선호된다. 트랜잭션은 여러개의 DML 명령문을 하나의 논리적인 작업 단위로 묶어서 관리하는 것으로, All 또는 Nothing 방식으로 작업 단위가 처리된다. 즉, SQL 명령문들이 모두 정상적으로 처리되었다면 모든 작업의 결과를 테이터베이스에 반영하지만 그 중 하나라도 잘못된 것이 있으면 모두 취소한다. 예를 들어 Service 클래스에서 각 메서드가 애플리케이션의 단위 기능을 수행할 때 여러 개의 SQL문을 묶어서 작업을 처리하는 단위 기능이 있을 것이다. 이러한 경우에 어느 하나의 SQL문이..
마이바티스 SQL을 소스 코드가 아닌 XML로 분리 SQL문과 코드를 분리해서 구현 데이터소스 기능과 트랙잭션 처리 기능을 제공 마이바티스의 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문 실행하면서 사용되는 조건도 절달 ..
스프링 MVC 기능 특징 모델 2 아키텍쳐 지원 스프링과 다른 모듈과의 연계 쉬움 타일즈나 사이트메시 같은 view 기술과 연계가 쉬움 태그 라이브러리를 통해 message 출력, theme 적용 그리고 입력 폼을 보다 쉽게 구현할 수 있음 SimpleUrlController 이용한 MVC 실습 web.xml - 브라우저에서 *.do로 요청하면 스프링의 디스패쳐서블릿 클래스가 요청 받을 수 있게 서블릿 매핑 action org.springframework.web.servlet.DispatcherServlet 1 action *.do action-servlet - 스프링에서 필요한 빈들을 설정 simpleUrlController SimpleUrlController.java - 매핑된 요청에 대해 컨트롤러의 기능 수행 publ..