2011-01-25 3 views
0

Netbeans/Glassfish 및 sqlite를 데이터베이스로 사용하는 Windows에서 Java/J2ee를 사용하여 웹 응용 프로그램을 만들고 있습니다.서버에 html 테이블 데이터를 보내는 방법 (java/j2ee)

jsp를 사용하여 테이블을 생성합니다. 테이블에는 세 개의 열이 있으며 사용자가 원하는만큼의 행을 갖습니다. 사용자가 셀의 데이터를 채우고 제출합니다. 처리를 위해 데이터를 서버에 보내야합니다. 서블릿은 HTML 폼의 데이터를 일부 메소드를 통해 읽을 수 있지만 테이블의 모든 셀에서 데이터를 읽을 수있는 방법은 없습니다. 어떻게해야합니까?

또한 "이전"및 "다음"단추를 사용하여 페이징을 구현하여 첫 페이지가 20 개의 행 (말)을 취하는 등 사용자가 끝날 때까지 페이징을 구현해야합니다. 나는 테이블 데이터 페이지를 서버로 보내야하는지, 아니면 사용자가 끝내고 모든 페이지를 서버에 보낼 때까지 일시적으로 클라이언트에 데이터를 저장할 수 있는지 알고 싶다. 사용자가 엄청난 수의 행을 입력하면 클라이언트에 부담을주지 않는 것이 좋습니다.

이것은 첫 번째 웹 응용 프로그램이므로 이미 설명되어있는 경우에 대비하여 이미 설명 된 장소로 리디렉션하십시오. 나는 상당한 검색을했지만.

답변

0

사용할 수있는 많은 웹 프레임 워크를 사용할 수 있지만 다른 작업을 수행 할 것을 권장합니다. 첫 번째 웹 앱이라고 했으므로 상대적으로 간단 할 것으로 예상됩니다. 따라서 프레임 워크없이 설 수 있습니다. 또한 핵심을 배워야하므로 프레임 워크없이 서 있어야합니다.

쓰기 가능한 테이블을 생성하는 JSP 페이지를 생성 할 수 있습니다. 태그 <table><input>을 결합해야합니다. 각 입력 태그에는 특성 이름이 있어야합니다. 같은 열의 모든 입력은 같은 이름을 갖습니다. car_model 및 car_manufacturer 2 개 라인 :

megane renault 
323 mazda 

테이블이 다음과 같이 표시됩니다

예를 들어

당신의 표는 2 열을 포함하는 경우 이 표는 물건을 제출할 양식으로됩니다. HTTP POST를 사용하여 서블릿에 추가합니다. 동일한 이름의 여러 매개 변수를 가져 오는 것은 문제가되지 않습니다. Servlet API는 이것을 허용합니다 : request.getParameters("car_manufacturer")은 우리의 경우 renault와 mazda를 포함하는 문자열 배열을 반환합니다.

이전 및 다음 링크 구현은 그리 복잡하지 않습니다. 데이터를 얻으려면 어쨌든 일부 페이징을 구현해야합니다. 따라서 DB에서 가져온 컬렉션의 첫 번째 보이는 요소의 인덱스와 보여줄 요소의 수를 저장하십시오. JSP는 이러한 요소를 취하고 SQL 조회를 수행하며 관련 요소 만 표시해야합니다. 더 나은 솔루션은 쿼리를 동적으로 수정하여 관련 요소 만 검색하는 것입니다.

내 대답이 도움이 되길 바랍니다. 정확한 할 일 목록이 포함되어 있지 않지만 시작하는 데 필요한 정보가 충분하다고 생각합니다. 행운을 빌고 재미있게 보내.

+0

알렉스. 고맙습니다. 제 질문의 첫 부분에 대해 언급 한 개념을 이해하고 있지만 "테이블이 다음과 같이 보일 것"이라고 말하면 코드를 볼 수 없습니다! 그리고 페이징 부분에 대해서는 DB에서 검색 한 데이터를보기 위해 페이징을 구현하는 것이 아니라 사용자가 DB에 전달하기 위해 입력하는 동안 수행합니다. 나는 그가 이전 페이지에서 입력 한 내용을 편집 할 수 있도록 사용자에게 "이전"의 유연성을 제공합니다. – shimna

관련 문제