2009-10-19 1 views
0

GWT를 사용하여 웹 앱을 만들려고합니다. 내 응용 프로그램에서는 MySQL을 데이터베이스로 사용합니다. 연결 풀을 사용하여 데이터베이스에 대한 연결 수를 제어하려고했습니다. 그러나 Google Web Toolkit은 CachedRowSet을 지원하지 않으므로 연결을 종료 할 수 없습니다. 아무도 이것에 대해 주위 산책을 알고 있습니까? (ResultSet의 완전한 복사본 만들기를 제외하고)Google 웹 툴킷이 CachedRowSet과 호환되지 않습니다.

답변

0

최상의 방법은 결과 집합의 전체 사본을지도 목록 . 목록의 각 요소는 맵 또는 결과 세트의 행이며, 맵 키는 컬럼 이름이고 값은 컬럼 값입니다. 클라이언트에서 데이터를 다시 동기화하려면이 작업이 다소 복잡 할 수 있습니다.

0

Java에서 GWT를 작성하고 있지만 사실 Javascript로 컴파일되었음을 알아야합니다. 이제 앉아서 누군가의 브라우저에서 실행중인 javascript가 서버에서 어떻게 연결을 닫을 지 생각해보십시오. 당신의 의도는 클라이언트 쪽에서 게으른로드 인 것처럼 보이며, 그것은 단지 일어나지 않을 것입니다. 일단이 정신 장애물을 극복하면 모든 것이 부드럽게 진행됩니다.

GWT를 사용하려면 접근 방식을 다시 생각해 봐야합니다. 모든 데이터는 일단 GWT 코드에서 사용되면 서버에서 연결이 끊어지고 컴파일 된 후에는 자바 스크립트로 실행된다는 점을 기억해야합니다. 그렇습니다. 데이터를 적절한 POJO로 옮기고이를 대신 클라이언트에 전달해야합니다. 미친 짓하지 않고 클라이언트에게 전체 데이터베이스를 전송하려고하면 필요한 부분을 간단히 추출하십시오 ...

+0

실제로 질문은 대답에 비하면 비논리적이지 않습니다. CachedRowSet는 연결이 끊어진 결과 집합으로 볼 수 있습니다. 그 중 하나는 서버와 씬 클라이언트간에 데이터를 앞뒤로 전달하는 것입니다. – BenM