Spring(16)
-
[Spring] Jackson 라이브러리를 사용해 댓글 쓰기 구현하기 (게시판 구현)
JSON 라이브러리 Jackson을 사용해 댓글 쓰기를 구현해보자 Jackson 라이브러리는 자바 표준 JSON 라이브러리로 JSON 뿐만 아니라 XML/YAML/CSV 등 다양한 형식의 데이터를 지원하는 data-processing(데이터 처리) 툴이다. 스트림 방식(works on core streaming API)이므로 속도가 빠르고 유연하며(참고1), POJO(Plain Old Java Object) 기반의 자바 객체들을 JSON으로 변환할 수 있다(참고2). pom.xml에 아래와 같이 jackson-databind 의존성을 추가해준다.1234567 com.fasterxml.jackson.core jackson-databind 2.8.8.1Colored by Color Scriptercs 1. ..
2017.04.25 -
[Spring] MyBatis 사용하기, SqlSession (게시판 구현)
MapperFactoryBean을 사용하지 않고, SqlSession을 주입해 사용해보자 Mapper XML과 DAO Interface를 연결해주는 MapperFactoryBean을 사용하지 않고, SqlSession을 DAOImpl 클래스에 의존성을 주입(DI)해 사용해보자. MapperFactoryBean은 **DaoImpl 클래스가 필요 없는 대신 DAO 인터페이스가 늘어날 때마다 root-context.xml에 bean을 등록해줘야 하는 반면에 SqlSession을 **DaoImpl 클래스에 DI해 사용하면 bean 객체를 추가해주지 않아도 되지만 DAO 인터페이스를 구현하는 DAOImpl 클래스를 필요로 한다. root-context.xml을 열어 MapperFactoryBean 객체를 추가해줬..
2017.04.25 -
[Spring] MyBatis 사용하기, 댓글 쓰기 구현하기 (게시판 구현)
스프링 MVC 구조로 MyBatis를 사용하여 댓글 쓰기를 구현해보자 기존에 Ajax를 이용한 댓글 쓰기 구현하기에서 모델2 구조로 구현했던 댓글 쓰기 기능을 MVC 구조로 MyBatis(이하 마이바티스)를 사용하여 구현해보자. 비동기 통신 Ajax와 데이터포맷인 Json은 기존 글을 참고하거나 검색해보도록 한다. 프로젝트 구조는 아래와 같이 진행되며 Comment 서블릿의 설정 파일인 comment-context.xml, 마이바티스 설정 파일인 mybatisConfig.xml, 쿼리를 작성할 Mapper XML 파일인 comment.xml, 그리고 com.edu.comment 패키지 아래에 컨트롤러, 서비스, DAO의 위치를 확인하자. 기존의 프로젝트에서는 *.bbs에 대한 요청을 받는 Dispatch..
2017.04.24 -
[Spring] MyBatis 사용하기, MapperFactoryBean (게시판 구현)
iBATIS 버전3인 MyBatis를 설정하고 사용해보자 과거 iBATIS인 MyBatis(이하 마이바티스)는 버전3부터 자바와 닷넷 주요 개발자들을 포함한 팀 전원이 아파치 소프트웨어 재단에서 구글 코드로 이전하면서 프레임워크의 이름이 변경되었다. 스프링은 MyBatis의 기본 지원을 중단하고 스프링 연동 프로젝트(mybatis-spring)를 시작했다(참고1). 데이터베이스 접속 정보를 담은 db.properties, 마이바티스 설정 파일인 mybatisConfig.xml, 쿼리가 작성되어있는 Mapper XML인 bbs.xml이 어느 경로에 위치해있는지 확인하기 위해 프로젝트의 전체적인 구조를 확인하자. pom.xml을 열어 iBATIS를 사용하기 위해 다운그레이드했던 스프링의 버전을 최신으로 변경..
2017.04.24 -
[Spring] 스프링이 지원하는 iBATIS 사용하기 (게시판 구현)
스프링 프레임워크가 지원하는 iBATIS를 사용해보자 iBATIS(이하 iBatis, 아이바티스)는 SQL에 기반한 데이터베이스와 자바, 닷넷(.NET), 루비(Ruby) 등을 연결시켜주는 역할을 하는 영속성 프레임워크(Persistence Framework)이다. 이러한 연결은 프로그램의 소스코드에서 SQL 문장을 분리하여 별도의 XML 파일로 저장하고, 이 둘을 서로 연결시켜주는 방식으로 작동한다. iBatis는 사용자가 SQL 문장을 만들면 그에 적합한 객체모델을 생성하는 방식으로 작동한다(참고1). iBatis 설정 파일(sqlMapConfig.xml)과 Mapper 파일(bbs.xml)의 위치를 확인하기 위해 전체적인 프로젝트 구조를 먼저 살펴본다. iBatis는 스프링4에서 더이상 지원하지 않..
2017.04.19 -
[Spring] 스프링이 지원하는 JdbcTemplate 사용하기 (게시판 구현)
스프링 프레임워크가 지원하는 JdbcTemplate을 사용해보자 스프링이 제공하는 JdbcTemplate은 데이터베이스 접근 정보를 클래스에 담지 않는다. 그러므로 더이상 기존 프로젝트의 OracleDBConnector클래스는 필요가 없으며, **DaoImpl클래스에서 메서드마다 커넥션을 얻지 않아도 된다. 스프링은 이러한 **Template클래스와 같이 다양한 API를 제공하는데, 이를 PSA(Portable Service Abstractions, 쉬운 서비스 추상화) 기술이라고 한다(참고1). 우선 pom.xml에 아래와 같이 spring-jdbc에 대한 의존성을 추가한다. 이때 주의할 점은 스프링에 관련된 jar파일들의 버전은 항상 일치해야 한다. 그렇지 않으면 에러가 발생하니 유의하도록 하자. 아..
2017.04.18