티스토리 뷰

얼마전 아주 이상한일이 있었습다....

다름이 아닐 Dataset에 분명히 값을 집어넣고 Spring서버로 보냈는데....

처음에는 아무 이상없이 데이터가 넘어 가던 것이 왠일인지 두 번째 보내려고 할 때는 당최 값이 Dataset에 들어가지 않는 것이었습니다.

세팅할 때 문제가 있나 해서 세팅하는 값을 Alert으로 확인도 해보고, Dataset에 Row를 잘못 찾아넣어서 그러나 하고 여러가지 시도를 해봤는데 무슨수를 써도 값에는 이상이 없었습니다.


그래서 여기저기 또 찾고 찾다가....인터넷에서는 못찾고...^^;;; MiPlatform으로 개발을 오래 하신 분에게 여쭤봤습니다. 그래서 겨우 답을 찾을 수 있었습니다.


Logic


일단 MiPlatform과 Spring을 이용한 Logic은 다음 그림과 같습니다.



Miplatform과 Spring을 통한 기본 로직Miplatform과 Spring을 통한 기본 로직


그런데 문제는 저 로직을 한 번 거치고 나면 두 번째는 Dataset에 특정 컬럼에 데이터를 입력하려고 Spring서버로 보내면 Dataset에 넣었던 데이터는 Null 값으로 넘어 오는 문제였습니다....



문제점이 생기는 부분....문제점이 생기는 부분....


윗 부분이 바로 문제가 있는 부분이죠....빨간글씨...... 아무리 데이터를 넣어도 Spring서버에는 Null로 넘어 옵니다...쿼리에 조회값을 넣어서 넘긴건데 당최 쿼리는 Null이 들어가서 돌더군요;;;;;;


문제해결


알고 봤더 제가 사용하던 쿼리에 문제가 있었습니다.....;;;;

제가 보내는 Dataset과 다시 return받는 Dataset을 동일 한 것으로 해 놨는데 리턴 할 때 쿼리의 컬럼이 하나만 선언되어있다보니 Return받을 때 Dataset에 있는 Column이 사라지는 문제가 있더군요....


예시를 하나 들자면 이렇습니다.


Dataset에는 컬럼이 두개 있습니다. A, B이죠....


Dataset 예제Dataset 예제


이 중 저는 B에 데이터를 넣고 보냈습니다. 그리고 퀄리를 실행할 때에는 Dataset에 B컬럼의 데이터를 조회값으로 넣고 실행하게 됩니다.



만든 Dataset에 조회조건 넣기만든 Dataset에 조회조건 넣기


이렇게 데이터를 넣고 Spring에 보내게 되면 "조회조건"값으로 쿼리를 실행하게 됩니다.



조회조건으로 쿼리를 실행합니다.조회조건으로 쿼리를 실행합니다.


이렇게 말이죠..... 그런데 여기서 문제가 있었습니다. 조회해 오는 컬럼을 하나만 선언하고 나니 Return받게 되는 Dataset은 A라는 컬럼 하나만 남게 되는 것입니다.



Return받은 이후 변경된 Dataset의 모습(예)Return받은 이후 변경된 Dataset의 모습(예)


이렇게 말이죠.....그러다 보니 한 번 조회후에 다시 B 컬럼에 "조회조건"을 아무리 집어넣고 Spring서버에 보내도 B컬럼으로 넘어 오는 값을 Null로 와서 조회 조건이 Null....이라는 값으로 조회를 하게 되는 것이었습니다.



같은 조건으로 B컬럼에 '조회조건'을 넣어도 Spring에서는 아무값이 없는 상태로 넘어온다.같은 조건으로 B컬럼에 '조회조건'을 넣어도 Spring에서는 아무값이 없는 상태로 넘어온다.


그래서 쿼리를 바꿨습니다......




이렇게 말이죠.....Spring에서는 iBatis(MyBatis 개명 전 버전임)를 쓰고 있어서 조회조건으로 넘겨주는걸 조회절에 하나 더 넣어서 컬럼 B로 선언해 주었습니다. 그랬더니 두 번째 Dataset을 활용할 때 값이 제대로 Setting되고 조회조건도 잘 넘어 가는 것을 확인했습니다.


저는 자동으로 컬럼을 유지해 주는줄 알았는데 Miplatform으로 오래 작업하신 분의 설명은 아니더군요....

개발환경에서 Dataset 컬럼을 선언해두는 건 단지 편의를 위해서 만들어 둔다는 것이었습니다. 리턴 받으면 리턴받은 컬럼대로 Dataset의 컬럼은 변한다고 하더군요....


마무리..


아주 이것 때문에 엄청헤메였습니다. 하지만 해결을 하고 나니 어의가 없더군요....보강이 필요한 부분인 것같습니다...^^




'Develop Story > MiPlatform' 카테고리의 다른 글

MiPlatform 기초부터 고급까지 동영상.....^^  (1) 2012.05.09
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함