안녕하세요 DB기반 어플을 작성하고 있습니다.
작성하다보니 이슈가 있어서 팀내에서도 의견이 분분하여 이곳 계시판에 질문겸 여러 고수님의 의견을 들어보고 싶습니다.

먼저 다음과 같이 DB를 설계하였습니다.(임의로 작성한 것입니다.)
_id    name    type
1       aaaa      a
2       bbbb      b
3       dddd      a
4       eeee      a
5       fffffff         b

위 Table에 있는 내용을 List에 바인딩 시키기 위하여 DTO 성격의 객체를 만들어 처리할려고 합니다.
물론 simpleCursorAdapter로 처리해도 되지만, simpleCursorAdapter를 사용할 경우
list에서 click 을 하여 처리를 할때 받아 오는 값이 _id값이므로 각 row별 type 속성을 가져올려면
table을 한번더 조회해야 할 것 같아서, DTO를 이용하여 처리하려고 합니다.

버튼 같은경우 버튼을 누르면 위 테이블에 내용이 List로 나오고 항목을 선택하면, name이 버튼에 text로 박히고,
저장을 누르면 별도의 table에 선택된 항목의 _id를 저장할려고 합니다. 이경우 버튼의 경우에는 객체로 binding하는
방법이 없어서(제가 못 찾은 것일 수도 있겠지만.. ) 문제가 되더라구요.
그렇다고 다른 테이블에 name의 값을 넣어주는것은 참조 무결성의 문제가 발생할수 있기 때문에 답은 아닌 것같구요.

본격적으로 질문 드리겠습니다.

질문1. 현재 List에 객체를 binding 하고 있는데, 이것이 항목이 많아진다면 각 항목별로 객체가 생성되기에 문제가 될 수도 있을 거 같습니다. 그냥 simpleCursorAdater를 이용해서 list에는 id만 가지고 있고 항목을 선택할 때마다 DB에서 조회하는게 더 올바른 방법일까요?
제가 알기론 실제 Java로 Enterprise Application같은거 조회할때 가장 자원이 많이 소비하는 부분이 DB connection을 맺고 해제하는 부분으로 알고 있는데요 이것이 모바일, 즉 안드로이드에도 적용되는 말인지요?



질문2.  버튼에 데이터를 바인딩할 방법이 없다면 위의 같은경우(실제로 보여지는것은 name이지만 뒤에서는 _id를 가지고 있어야하는 경우) 에는 어떻게 처리해야 할까요?


쓰다보니 장문의 글이 되었네요.. 두서도 없고... 아무튼 여러 고수님들의 가르침을 기다립니다.

감사합니다.