MyBatis.NET CRUD(1) - mySql DB연동
MyBatis.NET의 아주 기본적인 작업에 대해서 살펴보려합니다.^^ 프로젝트를 생성하고 데이터를 조회하는데 객체 매핑을 어떻게 하는지 확인 하실 수 있습니다. 실전으로 고고!고!!
프로젝트 생성
우선 간단한 CRUD를 확인하는 작업이기에 응용프로그램을 다음과 같이 디자인 해보겠습니다.
(정말 간단하다.. )
[그림 1] UI 구성
초기 작업
Data Mapper작업을 위해서 초기에 설정해줘야하는 작업들이 있습니다. 앞세션에서 관련된 파일들을 언급했었는데요. 해당 파일들이 어떤 역할들을 하는지 살펴보겠습니다. MyBatis.Net 사이트에서 다운 받은 파일 중에 IBatisNet.Common.dll과 IBatisNet.DataMapper.dll을 해당 프로젝트에 참조해주세요.
[그림 2] dll 참조
\IBatis.DataMapper.1.6.2.bin\Ibatis.DataMapper.1.6.2.bin폴더에 아래config 파일이 존재합니다. 프로젝트에 추가해주세요. 새로 만들어도 되지만 xml로 작성되기때문에 오류률을 줄이기위해 가져다 편집을 하는 방법을 선택하겠습니다.
(모든 파일 보기로 찾으시고, 추가한 sample.SqlMap.config파일은 SqlMap.config로 이름 바꾸기 해주세요.)
[그림 3] config 파일 참조
여기까지 진행하셨다면 다음과 같이 프로젝트가 구성됩니다.
[그림 4] 프로젝트 구성
Config 파일 설정
providers.config 파일 내용을 확인하면 많은 DBMS Provider가 정의되어 있습니다. 제가 사용하는 Provider는“MySql”입니다. 다른 Provider는 enabled="false" 해주시고“sqlServer2.0”는 는 enabled="true"로 설정해주세요.
* 버전을 확인하시기 바랍니다.
<?xml version="1.0" encoding="utf-8"?> <clear/> <provider |
다음은 SqlMap.config 파일입니다. 데이터베이스 연결 영역에 다음과 같이 DB 연결설정을 해주세요.
(./는 bin/Debug폴더를 가리킵니다. 결론적으로 "./providers.config"는 "bin/Debug/providers.config"라는 거죠)
<?xml version="1.0" encoding="utf-8"?>
<sqlMaps> </sqlMapConfig> |
데이터 조회
기본 설정이 마무리 되었으니 이제부터 데이터를 한번 조회해보겠습니다. MyBatis는 쿼리와 결과 데이터의 매퍼 역할을 하는 프레임워크입니다. 그래서 단순히 매퍼 역할만하게되는데요. 그 부분을 xml로 정의합니다. test데이터베이스에서 mybatistest테이블을 조회할건데요. 프로젝트에 매퍼 역할을 하는 test.xml 파일을 생성해주세요. 또한 응용프로그램에서 용이하게 사용하는 test의 엔티티를 test.cs로 구성해보겠습니다.
test.cs는 다음과 같이 작성해주세요.
*public 꼭 써주세요. 아주 중요합니다. 이것을 잊으면 몇날 며칠 고생하실수 있어요.
public class test { public int id{ get; set; } public string name{ get; set; } public int age{ get; set; } } |
다음은 test.xml 내용을 확인해보죠!! Select statement를 다음과 같이 작성해주면 됩니다.
<?xml version="1.0" encoding="utf-8" ?> <sqlMap namespace="프로젝트 네임" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://ibatis.apache.org/mapping"> <alias> <typeAlias alias="test" type="프로젝트 네임.클레스네임" /> </alias> <statements> <select id="SelectTest"resultClass="test(alias의 alias명)" > select * from 내 테이블명 </select> </statements> </sqlMap> |
UI에 다음 네임스페이스를 추가해주시고요.
using IBatisNet.Common; using IBatisNet.DataMapper; |
조회 버튼을 클릭해서 데이터를 조회해보겠습니다. Mapper 객체를 통해서 데이터를 조회하여 결과값을 리턴합니다.
privatevoid btnSelect_Click(object sender, EventArgs e) { try { IList<test> list = Mapper.Instance().QueryForList<test>("SelectTest", null); dataGridView1.DataSource = list; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } |
다음과 같이 Bin 폴더에 config 파일,cs파일과 xml파일을 이동시킵니다(cs파일의 위치는 상관없습니다.).
* bin폴더가 안보이신다구요? 솔루션 탐색기 도구모음에서 모든파일 보기를 클릭하시면 보입니다.
[그림 5] bin/Debug 에 추가
조회된 화면입니다. 조회를 한번하기위해 긴여정을 걸쳤습니다. 그래도 MyBatis를 사용하는 장점이 뭔가 있겠죠?! 다음편에서 그 진실을 파헤져보겠습니다.
[그림 6] 조회 결과 화면
수정하실때에는 bin/Debug 안에 있는 config, xml파일을 손보심 됩니다.
출처 : www.sqler.com
[출처] [Mybatis.net] CRUD(1) - mySql DB연동|작성자 복날님
'Language > C#' 카테고리의 다른 글
[C#] PrintDocument 이용한 다중 페이지 출력 (0) | 2016.02.04 |
---|---|
VisualStudio 단축키 (0) | 2016.02.04 |
MyBatis.NET 기본 및 환경 설정 (0) | 2016.02.04 |
MyBatis.NET CRUD(2) - mySql DB연동 (0) | 2016.02.04 |
윈폰 프로젝트에서 WCF 서비스 참조할 때 Reference.cs 파일이 비어있는 경우 (0) | 2016.02.04 |