Code Monkey home page Code Monkey logo

egov-data's Introduction

eGov Data Build Status

Spring Data 프로젝트의 주요 목표는 스프링 기반 애플리케이션이 데이터 접근 기술을 보다 손쉽게 사용할 수 있게 해주는 것입니다. 이 모듈은 표준프레임워크에서 사용하는 Hibernate와 iBatis 기반 데이터 접근 계층에 Spring Data의 핵심 기능을 제공합니다.

주요 기능

  • 기본 CRUD 메서드 구현 제공.
  • 쿼리 메서드 이름을 사용한 동적 쿼리 생성.
  • 커스텀 리포지토리 코드 연동.
  • 커스텀 네임스페이스 제공.

도움이 필요하다면

이 프로젝트는 두개의 핵심 프로젝트로 구성되어 있습니다.

  • eGov iBatis: iBatis를 지원하는 Spring Data 프로젝트.
  • eGov Hibernate: Hibernate를 지원하는 Spring Data 프로젝트.

Spring Data의 소스 코드, JavaDocs, 이슈 관리 등의 기본 프로젝트 정보 참고하세요.

프로젝트에 참여하고 싶다면

여러가지 방법으로 참여할 수 있습니다.

  • 봄싹 그룹스에 가입하시고 이 프로젝트와 관련된 의견을 남겨주세요. 봄싹에서 이 프로젝트 개발자들과 의사소통 할 수 있습니다.
  • 개선할 것이나 버그가 있다면 Github에 이슈를 만들어 주세요.
  • Github을 사용해서 소셜 코딩을 하고 싶다면 이 프로젝트를 포크하시고 코드를 작성하신 다음 풀 리퀘스르틀 해주세요. 풀 리퀘스트를 하실때는 반드시 누구나 이해할 수 있도록 충분히 친절하게 설명을 남겨주시고 관련된 이슈가 있다면 이슈 번호도 남겨주시기 바랍니다.
  • 마지막으로 지속적으로 관심 가지고 보고 싶다면 이 프로젝트를 Watch하시거나 Fork 해주세요.

개발자

egov-data's People

Contributors

arawn avatar daclouds avatar m0er avatar miracle0k avatar outsideris avatar whiteship avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

egov-data's Issues

CI 환경 설정

사전 작업

pom.xml에서 멀티 모듈 제거.

할일

  1. 데일리 빌드
    • 매일 오전에 빌드 후 저장소로 배포.
    • 빌드 결과는 무조건 메일로...
  2. 커밋 빌드
    • Push시 빌드
    • 빌드 실패시 메일로 노티.

기타

Hibernate와 iBatis가 완전 분리되었기 때문에 각각 Commit 빌드, Daily 빌드 설정

표준 프레임워크 2.0 메이븐 배포

표준 프레임워크 2.0 모듈이 메이븐 저장소에 올라가 있는지 확인.

없으면...

  1. 일단 봄싹 Nexus에 배포해주세요.
  2. 메이븐 중앙 저장소에 배포하는 방법 알아봐 주세요. -> 알게되시면 진행도요.
  3. egov-data-ibatis

Maven module 사용하지 않게끔 변경

Maven 모듈이 낯설게 느껴질 수도 있는 점과 STS나 이클립스에서 제대로 지원해 주지 않는 점을 고려해서 독립적인 모듈로 변경합니다.

iBatis SqlMap 설정시 사용하는 NameSpace 선언 기능

Repositoy의 method와 ibatis statement을 연결할 때 사용하는 NameSpace가 현재는 도메인 클래스의 이름을 그대로 사용하고 있다.

public class Domain {
    // attribute and method
}

public interface DomainRepository {
    public List<Domain> getAll();
}

위와 같이 코드가 작성되어 있다면, getAll()과 연결되는 쿼리 ID는 "Domain.getAll" 로 고정되어 생성된다.

namespace를 변경 가능한 전략(기능)을 제공해야할 필요 있으므로... 개발하기!

iBatis SqlMap구문과 쿼리메소드 매핑 전략 추가

public interface MyRepository extends SqlMapRepository<Domain, Long>  {
    Domain findOne(Long id);
}

위와 같은 레파지토리 인터페이스가 있을 때 기본 쿼리룩업 전략은 findOne이란 id를 가진 SqlMap 구문을 찾는 것인데요. 이것을 쿼리메소드에 어노테이션을 추가해 다른 구문과 연결하는 전략을 추가하려고 합니다.

public interface MyRepository extends SqlMapRepository<Domain, Long>  {
    @Statement("selectOne")
    Domain findOne(Long id);
}

이렇게 어노테이션을 지정할 경우 Domain.selectOne 구문과 매핑되겠죠?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.